#include<stdio.h>
void main()
{
int i,j,temp=0,x,y;
float a[11][6];
for(i=0;i<10;i++)
{
printf("输入第%d个学生的成绩\n",i+1);
scanf("%f%f%f%f%f",&a[i][0],&a[i][1],&a[i][2],&a[i][3],&a[i][4]);
a[i][5]=0;
}
for(j=0;j<5;j++)
a[11][j]=0;
for(i=0;i<10;i++)
{
for(j=0;j<5;j++)
a[i][5]+=a[i][j];
a[i][5]=a[i][5]/5;
printf("%3.1f",a[i][5]);
}
printf("\n");
for(j=0;j<5;j++)
{
for(i=0;i<10;i++)
a[10][j]+=a[i][j];
a[10][j]=a[10][j]/10;
printf("%3.1f",a[10][j]);
}
printf("\n");
for(i=0;i<10;i++)
for(j=0;j<5;j++)
{
if(a[i][j]>temp) {x=i;y=j;temp=a[i][j];}
}
printf("%3d%3d\n",x+1,y+1);
}
输入50个数后,就运行不了了,怎么回事,求解答
该题目是求10个学生5门课;每个学生的平均分,每门课的平均分;最后最高分数在哪个学生,哪个门课程
#include<stdio.h>
void main()
{
int i, j, x, y;
float a[11][6], temp = 0; //temp的类型应该跟数组a一样
for(i = 0; i < 10; i++)
{
printf("输入第%d个学生的成绩\n", i + 1);
scanf("%f%f%f%f%f", &a[i][0], &a[i][1], &a[i][2], &a[i][3], &a[i][4]);
a[i][5] = 0;
}
for(j = 0; j < 5; j++)
a[10][j] = 0; //数组a第一维下标最大是10
for(i = 0; i < 10; i++)
{
for(j = 0; j < 5; j++)
a[i][5] += a[i][j];
a[i][5] = a[i][5] / 5;
printf("%5.1f", a[i][5]); //指定宽度太小数字会连在一起
}
printf("\n");
for(j = 0; j < 5; j++)
{
for(i = 0; i < 10; i++)
a[10][j] += a[i][j];
a[10][j] = a[10][j] / 10;
printf("%5.1f", a[10][j]); //指定宽度太小数字会连在一起
}
printf("\n");
for(i = 0; i < 10; i++)
for(j = 0; j < 5; j++)
{
if(a[i][j] > temp)
{
x = i;
y = j;
temp = a[i][j];
}
}
printf("%3d%3d\n", x + 1, y + 1);
}
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息