问题标题: 酷町堂:1057 考试等级

1
1
已解决
高舒豪
高舒豪
中级光能
中级光能

1057   考试等级

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

题目描述 Description

一次考试过后,某老师想通过考试分数划分成绩等级,将成绩分为A,B,C,D档,A为最好,D为最差。并规定,考试成绩在90~100为A档;75~89为B档;60~74为C档;60分以下为D档。已知该班级的人数和每位同学的成绩,求该班级A、B、C、D等级对应的人数占班级总人数比例。

输入描述 Input Description

输入为2行,第一行为该班级的人数n(0<n≤100),第二行为每位同学的考试成绩(0~100)。

输出描述 Output Description

按照A、B、C、D等级的顺序输出该等级人数占班级总人数的比例,以百分比的形式输出,精确到小数点后两位。每个等级占一行,共4行。

样例输入 Sample Input

10 65 48 79 63 89 45 81 96 64 89

样例输出 Sample Output

10.00% 40.00% 30.00% 20.00%

​
#include<bits/stdc++.h>
using namespace std;
int a[1000];
int main(){
    int n;
    double al,bl,cl,dl;
    double n1,n2,n3,n4;
    cin>>n;
    for(int i=1; i<=n; i++){
        cin>>a[i];
    }
    for(int i=1; i<=n; i++){
        if(a[i]>=90){
            al++;
        }
        else if(a[i]>=75){
            bl++;
        }
        else if(a[i]>=60){
            cl++;
        }
        else{
            dl++;
        }
    }
    n1=(al/10)*100;
    n2=(bl/10)*100;
    n3=(cl/10)*100;
    n4=(dl/10)*100;
    printf("%.2f",n1);
    cout<<"%"<<endl;
    printf("%.2f",n2);
    cout<<"%"<<endl;
    printf("%.2f",n3);
    cout<<"%"<<endl;
    printf("%.2f",n4);
    cout<<"%";
    return 0;
}



​

WA16分


0
0
0
吕梓瑜
吕梓瑜
初级天翼
初级天翼
#include<iostream>
#include<cstdio>
using namespace std;
double A,B,C,D;
int main() {
    定义整型变量n,t;
    输入n;
    for循环(从1到n每次增加1) {
        输入t;
        如果(t大于等于90&&t小于等于100) {
            A加1;
        } 
        否则 如果(t大于等于75&&t小于等于89) {
            B加1;
        } 
        否则 如果(t大于等于0&&t小于等于74) {
            C加1;
        } 
        否则{
            D加1;
        }
    }
    printf("%.2f%%\n",100.0*A/n);
    printf("%.2f%%\n",100.0*B/n);
    printf("%.2f%%\n",100.0*C/n);
    printf("%.2f%%\n",100.0*D/n);
    返回0;
}

 

0
0
我要回答