мне нужно написать программу, которая считывает студентов баллов, получает лучший результат, а затем присваивает оценки, основанные на следующей схеме:Назначение класса из массива
1) Оценка является А, если оценка является> = лучший - 10
2) Оценка B, если оценка равна> = best - 20;
3) Оценка C, если оценка равна> = best - 30;
4) Оценка D, если оценка> = самая лучшая - 40;
5) Оценка в противном случае.
Программа предлагает пользователю ввести общее количество учеников, а затем предложит пользователю ввести все баллы и завершить, показывая оценки. Моя проблема исходит от вытягивать классы из массива, это то, что я до сих пор:
#include <iostream>
#include <string>
using namespace std;
int studentGrade(int* gradeArray, int numberStudents)
{
int grade = 0;
int score, best;
for (int i = 0; i < numberStudents; i++)
{
grade += gradeArray[i];
}
return (grade);
}
int main()
{
int numberStudents;
cout << "Enter the number of students: ";
cin >> numberStudents;
int* gradeArray = new int[numberStudents];
for (int i = 0; i < numberStudents; i++)
{
int score;
cout << "Enter the students Score: ";
cin >> score;
gradeArray[i] = score;
cout << gradeArray[i];
}
}
Что именно вы застряли на? Пожалуйста, будьте более конкретными. Кроме того, вы просачиваете 'gradeArray', так как вы не' delete [] 'it. Вместо этого рассмотрите использование 'std :: vector'. –
Другая проблема возникает, когда ввод неверен! Ввод всегда должен быть проверен перед его использованием: 'if (std :: cin >> score) {...} else {...}'. –