Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/25: Рейтинг темы: голосов - 25, средняя оценка - 4.92
2 / 2 / 3
Регистрация: 10.09.2013
Сообщений: 126

Найти максимальную оценку студента и вывести его ID потом фамилию и максимальную оценку

17.11.2013, 12:39. Показов 4896. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Мне нужно найти максимальную оценку студента и вывести его ID потом фамилию и макс оценку
Вот образец

INPUT:
3
1 Ivano 51
2 Zuckerberg 99.1
3 Mendelson 99.0

OUTPUT:
2 Zuckerberg 99.1

Вот мой код происходит сбой при вводе Помогите
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
using namespace std;
struct Student
{
    int ID;
    char *surname;
    double grade;
};
 
int main ()
{
    Student a[100];
    double max=0;
    int n;
    cin>>n;
    for(int i=0;i<n;i++)
    {
        cin>>a[i].ID;
        cin>>a[i].surname;
        cin>>a[i].grade;
        if(a[i].grade>max)
        {
            max=a[i].grade;
        }
        cout<<a[i].ID<<" "<<a[i].surname<<" "<<max;
    }
    return 0;
 
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.11.2013, 12:39
Ответы с готовыми решениями:

Найти среднюю оценку ученика и вывести его оценку в буквенном виде
Помогите сделать Даётся массив чисел, найти среднюю оценку ученика и вывести его оценку в буквенном виде. 100 - 90 -&gt; A, 89 – 80...

Найти максимальную оценку и соответствующее имя
два массива имен и оценок найти максимальную оценку и соответствуеешее имя.

Считать из бинарного файла в массив структур фамилию, имя, оценку по математике, оценку по информатике
необходимо считать из бинарного файла в массив структур фамилию, имя, оценку по математике, оценку по информатике, оценку по физике

8
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
17.11.2013, 12:52
Цитата Сообщение от AlisherIITU Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
[for(int i=0;i<n;i++)
  {
  cin>>a[i].ID;
  cin>>a[i].surname;
  cin>>a[i].grade;
  if(a[i].grade>max)
  {
      max=a[i].grade;
  }
  cout<<a[i].ID<<" "<<a[i].surname<<" "<<max;
А какого ответ запихнут в цикл ввода?
0
2 / 2 / 3
Регистрация: 10.09.2013
Сообщений: 126
17.11.2013, 12:54  [ТС]
Цитата Сообщение от taras atavin Посмотреть сообщение
А какого ответ запихнут в цикл ввода?
ну он в цикле должен быть же, тогда a[i] не будет работать же
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
17.11.2013, 13:01
Цитата Сообщение от AlisherIITU Посмотреть сообщение
ну он в цикле должен быть же, тогда a[i] не будет работать же
А зачем там a[i]? По смыслу это не текущий, а искомый, значит [m], а не [i]. Кроме того, даже если надо вывести в цикле, ввод к этому моменту должен быть завершён, если только это не вывод подсказки ко вводу, поэтому остальной вывод в цикле делается в отдельном цикле. Но здесь надо вывести один раз.
0
2 / 2 / 3
Регистрация: 10.09.2013
Сообщений: 126
17.11.2013, 13:07  [ТС]
Цитата Сообщение от taras atavin Посмотреть сообщение
А зачем там a[i]? По смыслу это не текущий, а искомый, значит [m], а не [i]. Кроме того, даже если надо вывести в цикле, ввод к этому моменту должен быть завершён, если только это не вывод подсказки ко вводу, поэтому остальной вывод в цикле делается в отдельном цикле. Но здесь надо вывести один раз.
К сожалению я вас не понел, и что значит [m], а не [i]?
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
17.11.2013, 13:12
То и значит.
C++
1
a[m].ID
.

Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Student a[100];
    double max=0;
    int m;
    int n;
    cin>>n;
    for(int i=0;i<n;i++)
    {
        cin>>a[i].ID;
        cin>>a[i].surname;
        cin>>a[i].grade;
        if(a[i].grade>max)
        {
            max=a[i].grade;
            m=i;
        }
      }
    cout<<a[m].ID<<" "<<a[m].surname<<" "<<max;
    return 0;
1
2 / 2 / 3
Регистрация: 10.09.2013
Сообщений: 126
17.11.2013, 13:18  [ТС]
Спасибо теперь все понятно!
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
17.11.2013, 13:49
А можно даже не хранить сам максимум:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Student a[100];
    int m;
    int n;
    cin>>n;
    for(int i=0, m=0; i<n; ++i)
    {
        cin>>a[i].ID;
        cin>>a[i].surname;
        cin>>a[i].grade;
        if(a[i].grade>a[m].grade)
        {
            m=i;
        }
      }
    cout<<a[m].ID<<" "<<a[m].surname<<" "<<a[m].grade;
    return 0;
Добавлено через 1 минуту
Да, кстати, здесь дыра переполнения массива, память надо или выделять динамически, или работать только с буфером, а не массивом, или n должно быть константой.

Добавлено через 51 секунду
Цитата Сообщение от AlisherIITU Посмотреть сообщение
struct Student
{
* * int ID;
* * char *surname;
* * double grade;
};
И это вводится?
C++
1
std::string surname;
.
0
2 / 2 / 3
Регистрация: 10.09.2013
Сообщений: 126
17.11.2013, 14:02  [ТС]
Да я с этим разобрался))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.11.2013, 14:02
Помогаю со студенческими работами здесь

Дан массив пяти оценок и пяти фамилий. Найти минимальную и максимальную оценку
Дан масив 5-ти оценок и 5-и фамилий .Надо найти мин и макс оценки

Определить средний балл каждой сессии и максимальную оценку по выбранному предмету
Записи об итогах сдачи вами трех экзаменационных сессий (пять предметов с названиями). Определить средний балл каждой сессии и максимальную...

Выведите значения всех KK при которых Вы можете заработать максимальную оценку
Вам дали длинное домашнее задание из NN вопросов (3≤N≤100,0003≤N≤100,000), каждый из которых оценивается баллами в интервале 0...10,000....

Файл: Записать фамилию и оценку студента в файл
Такая проблема. Нужно разработать программу, которая будет записывать фамилию и оценку студента в файл. Текст программы есть, но постоянно...

По выбору студента и предмету вывести оценку
Помогите пожалуйста мне нужно что бы я выбрав любого студента (из comboBox)и выбрав предмет он мне выводил на него соответствующую отметку...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc О Господи, Вечный, Ты . . . Я помоги, Бесконечный. . . Я прошу Ты. . . Я погибаю, спаси. . . Я прошу Тебя Вечный. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru