问题标题: 酷町堂:1285   统分大作战(statistics)

0
0
已解决
潮文馨
潮文馨
新手光能
新手光能

题目链接: 酷町堂:1285

1285   统分大作战(statistics)

经验值:100 时间限制:1000毫秒

安徽省2012年信息学竞赛试题(小学组)

不许抄袭,一旦发现,直接清空经验!

题目描述 Description

卡卡西是纽瑞滋小学五年级一班的学习委员,今天是暑假的第一天,卡卡西还没起床就一直在想:这个暑假一定要做一些有意义的事情,不如从今天开始吧!随后她一骨碌爬了起来美美的吃了个早饭,然后打开电脑,登录QQ。别看卡卡西年纪小,她可是班上的电脑高手呢,同学们平日里一有问题,都愿意向她请教。突然,她看到Semanda 老师的头像闪了起来,心想:老师这么早又开始工作了啊……果然不出她所料,原来是班上刚考完期末考试,Semanda 老师要根据成绩评选学习积极分子,正准备给卡卡西布置任务呢。Semanda 老师说:“这个统计可不简单哦!”,“没问题!保证尽快完成!”,卡卡西愉快的接受了任务,还发了一个笑脸给Semanda 老师,亲爱的小朋友们,你们可以帮助卡卡西一起解决这个问题么?
班级要根据语文、数学、英语和计算机这四科成绩,评选学习积极分子。评选规则如下:设:Y、S、E、J 分别代表语文、数学、英语、计算机。
1、四科平均成绩高于90 分,可判定学生等级为A。
2、若不符合等级A,且Y、S、E 三科平均成绩高于80 分,而且J 不低于90 分,可判定学生等级为B。
3、若不符合等级B,且四科中最高分为100 分,最低分不低于60 分,则判定学生等级为C。
4、若不符合A、B、C 任何等级,则判定学生等级为D。
5、一个学生只能被评为符合条件的最高等级(A 最高、D 最低)。
现在输入某些学生的四科成绩,请判断这些学生能被评为哪一等级。

输入描述 Input Description

共N+1 行,第一行为正整数N(1≤N≤1000),表示学生人数;后面N 行每行有4 个正整数(中间用空格隔开),分别表示学生的语文、数学、英语、计算机4 科成绩。

输出描述 Output Description

共N 行,每行输出一个学生的等级。

样例输入 Sample Input

2 90 92 94 95 50 80 60 40

样例输出 Sample Output

A D

数据范围及提示 Data Size & Hint

80%的数据1≤N≤100
100%的数据1≤N≤1000

60分代码:

int n,sum=0,sum1=0,max=0,min=999;
    int y,s,e,j;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>y>>s>>e>>j;
        if(y>max){
            max=y;
        }
        if(s>max){
            max=s;
        }
        if(e>max){
            max=e;
        }
        if(j>max){
            max=j;
        }
        if(y<min){
            min=y;
        }
        if(s<min){
            min=s;
        }
        if(e<min){
            min=e;
        }
        if(j<min){
            min=j;
        }
        sum=y+s+e+j;
        sum1=y+s+e;
        if(sum/4>90){
            cout<<"A"<<endl;
        }else if(sum1/3>80&&j>90){
            cout<<"B"<<endl;
        }else if(max==100&&min>=60){
            cout<<"C"<<endl;
        }else{
            cout<<"D"<<endl;
        }
        min=999;
        max=0;
    }


0
已采纳
李牧晓
李牧晓
中级天翼
中级天翼

极简代 码

不用那么多判断!

基 本框架哈~
整形 变量1;
输入变量1;
整形 变量2,变量3,变量4,变量5;
字符型 变量6;
循环{
    输入 变量2,变量3,变量4,变量5;
    如果((变量2+变量3+变量4+变量5)除以4.0大于90){
        变量6=大写a;
    }
    否则 如果((变量2+变量3+变量4)除以3.0大于80并且j大于等于90){
        变量6=大写b;
    }
    否则 如果((变量2等于100 或者 变量3等于100 或者 变量4等于100 或者 变量5等于100)并且变量2 大于等于 60并且变量3 大于等于 60并且变量4 大于等于 60并且变量5 大于等于 60){
        变量6=大写c;
    }
    否则{
        变量6=大写d;
    }
    输出变量6并换行;
}

望采纳

0
我要回答