用数组存储并处理n位同学m门课程的分数,n、m、分数由用户任意输入。
一、输出所有同学所有课程的分数。
二、输出每位同学的总分和平均分,保留1位小数。
三、输出每位同学的最高分、最低分。
四、分别输出每位同学的不及格课程(低于60分)、优秀课程(不低于90分)所占的比例。
#include<stdio.h>
int main()
{
int m,n;
printf("输入n位同学,m门课程:\n");
scanf("%d,%d\n",&n,&m);
int a[n][m],i,j;
for(i=0;i<n;i++)
for(j=0;j<m;j++)
scanf("%d",&a[i][j]);
float sum[n],average[m],b[i],r=0,t=0,B[i],g=0;
int max[i],min[i];
for(i=0;i<n;i++)
{average[i]=0;sum[i]=0;
for(j=0;j<m;j++)
{
sum[i]=sum[i]+a[i][j];
average[i]=sum[i]/(float)m;
printf("同学成绩=%3d",a[i][j]);
printf("\n");
max[i]=a[0][0];
min[i]=a[0][0];
if(a[i][j]>max[i])
max[i]=a[i][j];
if(a[i][j]<min[i])
min[i]=a[i][j];
if(a[i][j]<60)
r++;
b[i]=r/m;
if(a[i][j]>90)
t++;
B[i]=t/m;
}
printf("总分=%.1f\n平均分=%.1f\n",sum[i],average[i]);
printf("最高分=%d\n最低分=%d\n",max[i],min[i]);
printf("不及格比例=%.1f\n优分比例=%.1f\n", b[i],B[i]);
}
return 0;
}