论文任务书主要内容:C程序救救.....

来源:百度文库 编辑:神马品牌网 时间:2024/04/28 08:53:29
请用C语言编辑:
输入10个学生5门课的成绩,分别用函数求:①每个学生平均分;②每门课的平均分;③找出最高的分数所对应的学生&课程;④求平均分方差:q=(1/n)∑Xi*Xi-[(∑Xi)/n]*[(∑Xi)/n],Xi为某一学生的平均分。

float x1[10],x2[5];
float pp(),cc(),find(),xx();
main()
{char name[10][20],class[5][20];float score[10][5],o,k=0,max[5];int a[5],i,j;
for(i=0;i<10;i++)
gets(name[i]);
for(j=0;j<5;j++) gets(class[j]);
for(i=0;i<10;i++)
for(j=0;j<5;j++)
scanf("%f",&score[i][j]);
pp(score);
cc(score);
find(score,max,a);
o=xx(k);
for(i=0;i<10;i++)
{puts(name[i]);
printf("%.3f\n",x1[i]);}
for(j=0;j<5;j++)
{puts(class[j]);printf("%.3f\n",x2[j]);}
for(j=0;j<5;j++) {printf("%.3f \n",max[j]);
puts(name[a[j]]);
puts(class[j]);}
printf("o=%.3f\n",o);
}
float pp(f)
float f[10][5];
{float sum=0;int i,j;
for(i=0,sum=0;i<10;i++)
{for(j=0;j<5;j++)
sum=sum+f[i][j];
x1[i]=sum/5;}
}
float cc(y)
float y[10][5];
{float sum=0;int i,j;
for(j=0;j<5;j++)
{for(i=0;i<10;i++)
sum=sum+y[i][j];
x1[j]=sum/10;}
}
float find(z,s,t)
float z[10][5],s[5];int t[5];
{int i,j;
for(j=0,s[j]=z[0][j];j<5;j++)
for(i=0;i<10;i++)
if(s[j]<z[i][j]) {s[j]=z[i][j];t[j]=i;}
}
float xx(q)
float q;
{float f=0,e=0;int i;
for(i=0;i<10;i++)
{e=x1[i]*x1[i]+e;
f=f+x1[i];}
q=e/10-(f/10)*(f/10);
return(q);
}

用结构体定义描述数据类型简单一些.容易理解