C++ 虽然用于检查成绩的循环无效,但由于某些原因,该循环不起作用
这就是我正在研究的问题 带有输入验证的成绩(C++)。使用数组和函数修改grade程序。(程序应至少具有平均值、最小值、最大值、高于平均值等功能。共有4个功能)添加逻辑(主)以便如果用户输入无效等级(低于零、高于100),将向用户发出错误消息,然后允许用户重新输入等级。只要用户输入无效分数,此操作就会重复。您将需要一个While循环 当我输入一个小于0的数字时,由于某种原因,它不会执行while循环中的代码,而且我的minimum函数也不起作用 这是我的主函数和最小函数的代码C++ 虽然用于检查成绩的循环无效,但由于某些原因,该循环不起作用,c++,arrays,function,while-loop,C++,Arrays,Function,While Loop,这就是我正在研究的问题 带有输入验证的成绩(C++)。使用数组和函数修改grade程序。(程序应至少具有平均值、最小值、最大值、高于平均值等功能。共有4个功能)添加逻辑(主)以便如果用户输入无效等级(低于零、高于100),将向用户发出错误消息,然后允许用户重新输入等级。只要用户输入无效分数,此操作就会重复。您将需要一个While循环 当我输入一个小于0的数字时,由于某种原因,它不会执行while循环中的代码,而且我的minimum函数也不起作用 这是我的主函数和最小函数的代码 #include
#include <iostream>
using namespace std;
double average(double x[], int n);
double maximum(double x[], int n);
double minimum(double x[], int n);
int nAboveAvg(double x[], int n);
int main()
{
double grades[50];
int ngrades;
cout<<"How many grades? (max = 50) ";
cin>>ngrades;
//create for loop to get grades from user
for(int i = 0; i<ngrades; i++)
{
cout<<"Enter grade ";
cin>> grades[i];
while(grades[i]< 0 || grades[i] > 100)
{
cout<<"Invalid grade- please enter again"<<endl;
cin>>grades[i];
}
}
//call the functions
double avg = average(grades, ngrades);
double max = maximum(grades, ngrades);
double min = minimum(grades, ngrades);
int nAbove = nAboveAvg(grades, ngrades);
//display results
cout << "Average = " << avg << endl;
cout << "# above average = " << nAbove << endl;
cout<<"Max value is = "<<max<<endl;
cout<<"Min value is = "<<min<<endl;
}
//Minimum function
double minimum(double x[], int npts)
{
double min = x[0];
for(int i = 0; i < npts; i++)
{
if(x[i] < min)
{
min = x[i];
}
}
return min;
}
#包括
使用名称空间std;
双倍平均(双倍x[],整数n);
双倍最大值(双倍x[],整数n);
双最小值(双x[],整数n);
int-nAboveAvg(双x[],int-n);
int main()
{
双级[50];
国际等级;
coutngrades;
//创建for循环以从用户获取分数
对于(int i=0;i 100)
{
你的代码似乎适合我。
你试过重建它吗
你的代码很好。你的问题是什么?“小于0”-你的实际输入看起来如何?你的最小函数很好。确保你为等级[i]
输入的值小于0,而不是ngrades
:p..只是想确定..嗯,这很奇怪,我也遵守了,但对我来说仍然不起作用多少等级?(最大值=50)3输入等级-1输入等级2输入等级4平均值=1.66667#高于平均值=2最大值为=4------------------进程在7.955秒后退出,返回值为0按任意键继续…有多少等级?(最大值=50)3输入等级-1输入等级2输入等级4平均值=1.66667#高于平均值=2最大值为=4--------------------进程在7.955秒后退出,返回值为0按任意键继续…这就是我的输出看起来的样子OK nevermind我让它也工作了,但它没有打印最小值