第1个回答 推荐于2017-12-16
#include<stdio.h>
int main()
{
int i,j,a[4][5];
printf("请输入成绩:\n");
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%3d",&a[i][j]);
for(i=0;i<3;i++)
a[i][4]=(a[i][0]+a[i][1]+a[i][2]+a[i][3])/4;
for(j=0;j<5;j++)
a[3][j]=(a[0][j]+a[1][j]+a[2][j])/3;
printf("数组为:\n");
for(i=0;i<4;i++)
{
for(j=0;j<5;j++)
printf("%-4d ",a[i][j]);
printf("\n");
}
return 0;
}
不懂可以追问本回答被网友采纳
第2个回答 2019-07-20
#include<stdio.h>
void xsaver(float (*p1)[4],int n) //每个学生的平均分
{
float stud[n];int i,j;
stud[0]=0;stud[1]=0;stud[2]=0;
for(i=0;i<n;i++)
{
for(j=0;j<4;j++)
stud[i]+=*(*(p1+i)+j);
printf("stud[%d]=%5.2f\t",i,stud[i]/4);
}
printf("\n");
}
void kcaver(float (*p)[4],int n)//每门课程的平均分
{
int i,j;float course[n];
course[0]=0;course[1]=0;course[2]=0;course[3]=0;
for(j=0;j<n;j++)
{
for(i=0;i<3;i++)
course[j]+=*(*(p+i)+j);
printf("course[%d]=%5.2f\t",j,course[j]/3);
}
}
void max(float *p,int n)//p=*score=score[0],score[0]是个列指针,p也是列指针
{
float max=*p;int maxi,maxj,k=0;
for(int j=0;j<=n-1;j++)
if(*(p+j)>max){max=*(p+j);k=j;}
maxi=k/4;maxj=k%4;
printf("\nk=%d maxi=%d maxj=%d max=%5.2f\n",k,maxi,maxj,max);
}
int main()
{
float score[3][4]={{65,67,70,60},{80,87,90,81},{90,99,100,98}};
xsaver(score,3);//每个学生的平均分
kcaver(score,4);//每门课程的平均分
max(*score,12);//求最高分
return 0;
}
第3个回答 2012-07-03
main()
{
int data[5][4];
int i,j;
for(i=0,i<3;i++)
{//输入成绩
for(j=0;j<3;j++);
scanf("%f ", &data[i][j]);
scanf("%f\n", &data[i][4]);
}
for(i=0;i<4;i++)//求平均分
data[3][i]=(data[0][i]+data[1][i]+data[2][i])/3;
for(j=0;j<4;j++)//求总分
data[j][4]=data[j][0]+data[j][1]+data[j][2]+data[j][3];
}
写完收工,给分吧本回答被提问者和网友采纳