假设一个班有n(n<=50)个学生,每人考m(m<=5)门课,求每个学生的平均成绩和每门课的平均成绩,并输出各科成绩均大于等于平均成绩的学生数量。 提示: 1、使用float类型可能无法AC,需使用double类型才能AC; 2、每次测试实例的结果后面有个空行,就是要有两个"\n"或"endl";
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
int n,m,a[50][50],i,j,l,k;
double b[50],c[50],sum;
while(cin>>n>>m)
{
for(i=0; i<n; i++)
{
for(j=0; j<m; j++)
cin>>a[i][j];
}
for(i=0; i<n; i++)
{
sum=0;
for(j=0; j<m; j++)
sum=sum+a[i][j];
b[i]=sum/m;
}
for(j=0; j<m; j++)
{
sum=0;
for(i=0; i<n; i++)
sum=sum+a[i][j];
c[j]=sum/n;
}
k=0;
for(i=0; i<n; i++)
{
l=0;
for(j=0; j<m; j++)
{
if(a[i][j]<c[j])
{
l=1;
break;
}
}
if(l==0)
k++;
}
for(i=0; i<n; i++)
{
cout<<setiosflags(ios::fixed)<<setprecision(2)<<b[i]<<" ";
}
cout<<endl;
for(j=0; j<m; j++)
{
cout<<setiosflags(ios::fixed)<<setprecision(2)<<c[j]<<" ";}
cout<<endl;
cout<<k<<endl<<endl;
}
return 0;
}