从键盘输入一个班(全班最多不超过30人)学生某门课的成绩,当输入成绩为负值时,输入结束,分别实现下列功能:
(1)统计不及格人数并打印不及格学生名单;
(2)统计成绩在全班平均分及平均分之上的学生人数,并打印这些学生的名单;
(3)统计各分数段的学生人数及所占的百分比。
注:将成绩分为六个分数段,60分以下为第0段,60~69为第1段,70~79为第2段,80~为第3段,90~99为第4段,100分为第5段。
编程要求:
1.较好的用户输入输出提示信息
2.使用子函数来实现上述各个功能
3.最好不要使用全局变量
提示:
1.用num[i]存放第i+1个学生的学号,用score[i]存放第i+1个学生的成绩。设置计数器count,当score[i]<60分时,计数器count计数一次,并打印num[i]和score[i]。
2.先计算全班平均分aver,当第i个学生的成绩score[i]>=aver时,打印num[i]和score[i]。
3.各分数段的学生人数保存在数组stu中,用stu[i]存放第i段的学生人数。对于每个学生的成绩,先计算出该成绩所对应的分数段,然后将相应的分数段的人数加1,即stu[i]++。
*/
#include #define M 30 int ReadScore(float score[],long num[]); int GetFail(long num[],float score[],int n); float GetAver(float score[],int n); int GetAboveAver(long num[],float score[],int n); void GetDetail(float score[],int n); void main() { int n; long num[M]; float score[M]; char sel; printf(" <***学生成绩统计***>\ \ "); n=ReadScore(score,num); printf("学生人数为:%d scanf("%c