计算平均值,而不向退出循环添加负等级



我已经尝试运行这个程序一段时间了。所以基本上它继续添加负整数,我在计算平均值和输出你输入的成绩时用来结束循环,我不希望它这样做。

这是我到目前为止得到的:

#include <iostream>
#include <string.h>
using namespace std;
int main()
{
    int total=1;
    int grades;
    int count=0;
    int avg;
    float sum;
    do  {     
        count++;
        cout<<"Enter a graden";
        cin>>grades;
        total=total+grades;     
        //total= total+ grades;
        //avg=(total)/count;
    }while (grades>=0);  
    cout<<"You enterd"<<" "<<count <<" "<<"grades";
    cout<<endl;
    cout<<"The average of the grades is "<<(total)/count;    
    return 0;
}

如果您不希望它添加负数,请添加条件语句。

while(grades >= 0){
    count++;
    cout<<"Enter a graden";
    cin>>grades;
    if(grades >= 0) total=total+grades; 
}

或者只是改变循环的顺序

int grades = 0 // initialize grades
while(grades >= 0){
    total += grades; 
    count++;
    cout<<"Enter a graden";
    cin>>grades;
}

最新更新