c语言 统计学生成绩平均分以及不及格人数
#include<stdio.h>int main()
{
int i = 0;//记录学生成绩个数
double score;//分数
int count = 0;//不及格成绩计数
float sum = 0.0;//分数和初始化
double average = 0;//平均数初始化
scanf("%lf", &score);
while (score >= 0)
{
sum = sum + score;
//统计分数低于60分的同学人数
if (score < 60)
{
count++;
}
i++;
scanf("%lf", &score);
}
printf("%.2lf %d", sum / i, count);
return 0;
}
之前把代码写成了
while (score >= 0)
{
sum = sum + score;
i++;
scanf("%lf", &score);
//统计分数低于60分的同学人数
if (score < 60)
{
count++;
}
}
这样会犯一个错误。就是当所有分数都是大于60分数,不及格人数就会显示一个,这一个就是负数搞的鬼。
10 20 56 73 80 -1这是给的测试数据。只个一个太可恶了。通过这个程序,我又对程序自上而下的设计又有了理解。
欢迎指出代码的不足之处,我很高兴你能指出我的错误。
文档来源:51CTO技术博客https://blog.51cto.com/rjgx/3255697
页:
[1]