7-41至7-42

7-41 成绩统计分析表(*) (10 分)

输入一个班的成绩,输出成绩统计分析表。

输入格式

班级人数n (n>0)
n 名学生的成绩 s​1​​,s​2​​,⋯,s​n​​ (0≤s​i​​≤100,1≤i≤n)

输出格式

输出 n 名学生的序号、成绩、柱状图 输出全班的最高分、最低分、平均分及柱状图 按成绩等级输出各等级的比例及柱状图

成绩等级:

成绩等级
[90,100]A
[80,90)B
[70,80)C
[60,70)D
[0,60)E

输入样例

15
98.5 67.3 42.5 90 75.2 63 77 99.5 8 100 80.5 69.5 88.5 66.5 87.5

输出样例

001:  98.5 ***************************************************************************************************
002:  67.3 *******************************************************************
003:  42.5 *******************************************
004:  90.0 ******************************************************************************************
005:  75.2 ***************************************************************************
006:  63.0 ***************************************************************
007:  77.0 *****************************************************************************
008:  99.5 ****************************************************************************************************
009:   8.0 ********
010: 100.0 ****************************************************************************************************
011:  80.5 *********************************************************************************
012:  69.5 **********************************************************************
013:  88.5 *****************************************************************************************
014:  66.5 *******************************************************************
015:  87.5 ****************************************************************************************

Max: 100.0 ****************************************************************************************************
Min:   8.0 ********
Avg:  74.2 **************************************************************************

A:  26.7% ***************************
B:  20.0% ********************
C:  13.3% *************
D:  26.7% ***************************
E:  13.3% *************

注:

(1) 所有实数只输出1位小数。
(2) 柱状图中星号数量按实数 4 舍 5 入后取整。

#include<stdio.h>

int main()
{
    int n;
    scanf("%d",&n);
    double a[n];
    double max=-1,min = 101,sum=0,avg;
    double A=0,B=0,C=0,D=0,E=0;
    for(int i=0;i<n;i++){
        scanf("%lf",&a[i]);
        max = max>a[i]?max:a[i];
        min = min<a[i]?min:a[i];
        sum+=a[i];
        if(a[i]<60) E++;
        else if(a[i]<70) D++;
        else if(a[i]<80) C++;
        else if(a[i]<90) B++;
        else A++;
    }
    avg = sum/n;
    for(int i=0;i<n;i++){
        printf("%03d:%6.1f ",i+1,a[i]);
        int t = a[i]+0.5;
        for(int i=0;i<t;i++)printf("*");
        printf("\n");
    }
    printf("\n");
    printf("Max:%6.1f ",max);
    int t = max+0.5;
    for(int i=0;i<t;i++)printf("*");
    printf("\n");
    printf("Min:%6.1f ",min);
    t = min+0.5;
    for(int i=0;i<t;i++)printf("*");
    printf("\n");
    printf("Avg:%6.1f ",avg);
    t = avg+0.5;
    for(int i=0;i<t;i++)printf("*");
    printf("\n");
    printf("\n");
    printf("A:%6.1f%% ",A/n*100);
    t = A/n*100+0.5;
    for(int i=0;i<t;i++)printf("*");
    printf("\n");
    printf("B:%6.1f%% ",B/n*100);
    t = B/n*100+0.5;
    for(int i=0;i<t;i++)printf("*");
    printf("\n");
    printf("C:%6.1f%% ",C/n*100);
    t = C/n*100+0.5;
    for(int i=0;i<t;i++)printf("*");
    printf("\n");
    printf("D:%6.1f%% ",D/n*100);
    t = D/n*100+0.5;
    for(int i=0;i<t;i++)printf("*");
    printf("\n");
    printf("E:%6.1f%% ",E/n*100);
    t = E/n*100+0.5;
    for(int i=0;i<t;i++)printf("*");
    return 0;
}

7-42 罚抄英语单词 (10 分)

小丽英语课听写单词情况不好,老师罚小丽抄写单词“Math”,“English”,“Computer”m遍,连抄n天。

输入格式:

在一行中给出2个小于100的整数n,m。

输出格式:

输出小丽n天抄写的所有单词,三个单词写在一行。

输入样例:

在这里给出一组输入。例如:

3 2

输出样例:在这里给出相应的输出。例如:

Math,English,Computer
Math,English,Computer
Math,English,Computer
Math,English,Computer
Math,English,Computer
Math,English,Computer
#include<stdio.h>
int main()
{
    int m,n,z;
    int i;
    scanf("%d %d",&m,&n);
    z = m*n;
    //printf("%d\n",z);
    for ( i = 0; i < z; i++)
    {
            printf("Math,English,Computer\n");
    }
    system("pause");
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值