c++编程:请问哪里错了?运行时按下Enter键,提示让输入2和3的成绩?
#include<iostream.h>
class student
{
private:
float max,min,avg;
char cScort[10];
public:
student()
{
max=min=avg=0;
}
void test()
{
cout<<"请输入10个同学的成绩:"<<endl;
for(int i=0;i<10;i++)
{
cout<<"第"<<i+1<<"个学生成绩:";
cin>>cScort[i];
}
min=max=cScort[0];
for(i=0;i<10;i++)
{
avg+=cScort[i];
if(min>cScort[i])
min=cScort[i];
if(max<cScort[i])
max=cScort[i];
}
avg/=10;
cout<<"最高成绩:"<<max<<"最低成绩:"<<min<<"平均分:"<<avg<<endl;
}
};
void main()
{
student studentA;
studentA.test();
}
我已经知道怎么解决了,但不清楚为什么?谢谢
[解决办法]
为什么声明的cScort[i]要用char型的呢?
char型的话一位数字就是一个char变量,如果你输入了两位数,相当于两个char字符,那么就直接跳到第三个循环上去了,所以有提示输入第2次和第3次的数字。