C语言编程:从键盘输入一个班学生某门课程的成绩,当输入成绩为负值时,输入结束,分别统计下列

考试用有哪位大神会拜托了!!(1)统计不及格人数(2)求平均分(3)统计平均分之上(包括等于平均分)人数(4)统计各个分数段的学生人数及其所占比例(分数段为:优秀90~1... 考试用 有哪位大神会 拜托了!!
(1) 统计不及格人数
(2) 求平均分
(3) 统计平均分之上(包括等于平均分)人数
(4) 统计各个分数段的学生人数及其所占比例(分数段为:优秀90~100,良好80~89,一般60~79,不及格60以下)。
要求:将以上每一步骤的结果均输出,验证程序是否正确实现题目要求。
注:成绩为整数,成绩个数不超过20个。
展开
 我来答
Fans_Men
2013-06-29 · TA获得超过418个赞
知道小有建树答主
回答量:65
采纳率:0%
帮助的人:87.1万
展开全部
#include <stdio.h>
 
int main() {
    int array[20], length, i;
    int tmp, sum = 0, average;
    int A = 0, B = 0, C = 0, D = 0, cnt = 0;
 
    for (i = 0; ; ++i) {
        scanf("%d", &tmp);
        if (tmp < 0) {
            break;
        }
        array[i] = tmp;
 
        sum += array[i];
        if (array[i] >= 90) {
            ++A;
        } else if (array[i] >= 80) {
            ++B;
        } else if (array[i] >= 60) {
            ++C;
        } else {
            ++D;
        }
    }
    length = i;
 
    //(1)
    putchar('\n');
    printf("%d\n", D);
 
    //(2)
    putchar('\n');
    average = sum/length;
    printf("%d\n", average);
 
    //(3)
    putchar('\n');
    for (i = 0; i < length; ++i) {
        if (array[i] >= average) {
            ++cnt;
        }
    }
    printf("%d\n", cnt);
 
    //(4)
    putchar('\n');
    printf("优秀:%d人,占%%%.2lf\n", A, 1.0*A/length*100);
    printf("良好:%d人,占%%%.2lf\n", B, 1.0*B/length*100);
    printf("一般:%d人,占%%%.2lf\n", C, 1.0*C/length*100);
    printf("不及格:%d人,占%%%.2lf\n", D, 1.0*D/length*100);
 
    return 0;
}

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式