我创建了一个程序,允许用户输入10个等级。我使用了一个while循环来存储数组中的成绩,但如果用户只有5个等级可以输入,他可以输入done来退出程序。如何使用数组的while循环?
循环结束后,它会计算并显示。列表中的最高年级,最低年级和平均成绩
不幸的是,当用户键入完成时,程序将显示未输入的其余成绩线。
你能帮我找出如何停止while循环来显示循环的其余未被中止的等级吗?
#include <iostream>
using namespace std;
int main()
{
const int SIZE = 10;
int grade[SIZE];
int count = 0;
int lowestGrade;
int highestGrade;
bool done = false;
cout << "This program is limited to entering up to 10 grades." << endl;
while (grade[count] != done && count < SIZE)
{
cout << "Enter a grade #" << count + 1 << " or done to quit: ";
cin >> grade[count];
count++;
}
//LOWEST GRADE
lowestGrade = grade[0];
for (count = 0; count < SIZE; count++)
if (grade[count] < lowestGrade)
{
lowestGrade = grade[count];
}
//HIGHEST GRADE
highestGrade = grade[0];
for (count = 0; count < SIZE; count++)
{
if (grade[count] > highestGrade)
{
highestGrade = grade[count];
}
}
//AVERAGE GRADE
double total = 0;
double average;
for (int count = 0; count < SIZE; count++)
total += grade[count];
average = (total/SIZE);
cout << endl;
cout << "Your highest grade is: " << highestGrade << endl;
cout << "Your lowest grade is: " << lowestGrade << endl;
cout << "Your average grade is: " << average << endl;
system("pause");
return 0;
}
看代码'cin >>等级[count];'。你打算如何将“完成”一词放在一个用于等级的数组中?也许像'-1'这样的数字可以用来表示“完成”,然后检查输入的数字是否为“-1”? – PaulMcKenzie