杭电2023题
假设一个班有n(n<=50)个学生,每人考m(m<=5)门课,求每个学生的平均成绩和每门课的平均成绩,并输出各科成绩均大于等于平均成绩的学生数量。
每个测试实例后面跟一个空行。
#include<stdio.h>
int main()
{
    int a,b,i,j;
    while(scanf("%d%d",&a,&b)!=EOF)
    {
      int count=0;
    double cj[55][10]={0.0},ave1[50][10]={0.0},s[50]={0.0},k[50]={0.0}; 
        for(i=1;i<=a;i++)
        for(j=1;j<=b;j++)
        scanf("%lf",&cj[i][j]);
        for(i=1;i<=a;i++)
        for(j=1;j<=b;j++)
        s[i]+=cj[i][j];
        for(j=1;j<=b;j++)
        for(i=1;i<=a;i++)
        k[j]+=cj[i][j];
        for(i=1;i<a;i++) 
        printf("%.2lf ",(double)s[i]/b);
        printf("%0.2lf\n",(double)s[a]/b);
        for(i=1;i<b;i++) printf("%.2lf ",(double)k[i]/a);
        printf("%0.2lf\n",(double)k[b]/a);
       for(i=1;i<=a;i++)
        {
            int book=0;
            for(j=1;j<=b;j++)
                if(cj[i][j]>=k[j]/(double)a)
                book++;
            if(book==b)
                count++;
        }
        printf("%d\n\n",count);  //两个换行符!!
    } 
    return 0;
}
                    
                
                
            
        
浙公网安备 33010602011771号