帮忙看一下哪里错了??2唯数组

来源:百度知道 编辑:UC知道 时间:2024/05/31 02:00:56
一个学习小组有5个人,每个人有三门课的考试成绩。求全组分科的平均成绩和各科总平均成绩。

main()
{
int i,j,l,s=0,v[3],a[5][3];
printf("shu ru cheng ji\n");
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
{
scanf("%d",&a[j][i]);
s=s+a[j][i];
v[i]=s/5;
s=0;
}
l=(v[0]+v[1]+v[2])/3;
printf("%d %d %d",v[0],v[1],v[2]);
printf("%d",l);
}
}
谁能个告诉我个正确答案

main()
{
int i,j;
float l,s=0,v[3],a[5][3]={0};
printf("shu ru cheng ji\n");
for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
{
scanf("%f",&a[j][i]);
s=s+a[j][i];
}
v[i]=s/5.0;
s=0;

printf("%f",v[i]);

}
l=(v[0]+v[1]+v[2])/3;
printf("%f",l);

}
你的逻辑顺序对了,可输出的时候出错了,你对照看一下吧

for(i=0;i<3;i++)
{
for(j=0;j<5;j++)
{
scanf("%d",&a[j][i]);
s=s+a[j][i];
这里改成:
for(i=0;i<5;i++)
{
for(j=0;j<3;j++)
{
scanf("%d",&a[i][j]);
s=s+a[i][j];

你要求的是全组的分科成绩
那就是科目i=0的时候j从0到4
把这5个成绩依次加起来的..
所以应该是a[i][j]
而且第二个for循环结束的地方不对
应该是只要一与s相加就马上停止
不能把v[i]=s/5也写入在内....

main()
{
int i,j,l=0,s=0,v[3],a[5][3];
printf("shu ru cheng ji\n");
for(i=0;i<3;i++)
{