C语言怎样编程用键盘输入学生的分数,并求平均分和不及格人数?

怎样编程从键盘输入一批学生的成绩(以负数为结束标志),计算平均分,并统计不及格成绩的个数。
以下是已经开头的代码,求大神继续补充完整
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
//num代表总人数,score用于记录当前输入的分数,sum记录总分,
//average记录平均分,failed记录不及格人数,所有分数都定为“整数”。
int num=0, score=0,sum=0,average=0,failed=0;

}

#include <stdio.h>

#include <stdlib.h>

int main(int argc, char *argv[]) 

{

//num代表总人数,score用于记录当前输入的分数,sum记录总分,

//average记录平均分,failed记录不及格人数,所有分数都定为“整数”。

int num=0, score=0,sum=0,average=0,failed=0;

do{

scanf("%d",&score);

if(score>=0)

{

sum+=score;//大于0的数,累加 

num++;//大于0的计数 

if(score<60)

failed++;//不及格的计数 

}

}while(score>=0);//score大于0,继续循环;否则终止 

average=sum/num;//平均值 

printf("平均分:%d 不及格的人数:%d",average,failed);

return 0;

}

追问

我是个C语言小白,为什么这里要用到stdlib头文件和(int argc,char argv呢?

追答

实际你这个程序用不到这两行代码;
#include //这是个头文件,但是你这个程序并未用到这头文件下的,库函数(系统函数),所以这一句可有可无;
int main(int argc, char *argv[])//至于这一句,也是与本程序没太大关系的代码;int main()
一样可以运行
这一句我可能没能力给你解释清楚;但可以把这个理解成一个框架,;就这一题而言,这两种框架执行结果是一样的;
#include
int main()
{..............;return 0;}
____________________________________
#include
int main(int argc,char *argv[])
{..............;return 0;}

实际你这个程序用不到这两行代码;
stdlib //这是个头文件,但是你这个程序并未用到这头文件下的,库函数(系统函数),所以这一句可有可无;
int main(int argc, char *argv[])//至于这一句,也是与本程序没太大关系的代码;int main()
一样可以运行
这一句我可能没能力给你解释清楚;但可以把这个理解成一个框架,;就这一题而言,这两种框架执行结果是一样的;
#include
int main()
{..............;return 0;}
____________________________________
#include
int main(int argc,char *argv[])
{..............;return 0;}

这两行代码可有可无,
第一头文件,这程序并未用到这个头文件下的库函数(系统函数);
(int argc,char argv)这多余的,本程序用不到;

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-15
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
//num代表总人数,score用于记录当前输入的分数,sum记录总分,
//average记录平均分,failed记录不及格人数,所有分数都定为“整数”。
int num=0, score=0,sum=0,average=0,failed=0;
while(scanf("%d", &score) != EOF) {
if (score < 0) {

break;

}
sum += score;
num ++;
if (score < 60) {

failed++;

}

}
average = sum / num;
printf("num: %d, sum: %d, average: %d, failed: %d\n", num, sum, average, failed);
return 0;
}
相似回答