#include"stdio.h"
void ssa(float s[13][5]);
void cmm(float s[13][5]);
void ca(float s[13][5]);
void main()
{float s[13][5];
int i,j;
for(i=0;i<10;i++)
for(j=0;j<3;j++)
scanf("%f",&s[i][j]);
ssa(s);;
cmm(s);
ca(s);
for(i=0;i<10;i++)
printf("\n");
for(j=0;j<3;j++)
printf("%.1f",s[i][j]);
}
void ssa(float b[13][5])
{
int i;
for(i=0;i<10;i++)
b[i][3]=b[i][0]+b[i][1]+b[i][2];
b[i][4]=b[i][3]/3;
}
void cmm(float b[13][5])
{
int i,j;
int ma=100,mi=0;
for(j=0;j<3;j++)
for(i=0;i<10;i++)
if(ma<b[i][j])
{ma=b[i][j];
b[11][i]=ma;}
else
{mi=b[i][j];
b[12][j]=mi;
}
}
void ca(float b[13][5])
{int j;
for(j=0;j<3;j++)
b[13][j]=(b[1][j]+b[2][j]+b[3][j]+b[j][j]+b[5][j]+b[6][j]+b[7][j]+b[8][j]+b[9][j]+b[10][j])/10;
}
运行结果应该是如图吧(为了验证方便,改了一下输入数据的量)
给你的程序稍加改动了一些,你只需将数组的下标参照下面程序修改一下即可使用了。
#include <stdio.h>
#include <stdlib.h>
void ssa(float s[5][5]);
void cmm(float s[5][5]);
void ca(float s[5][5]);
int main()
{
float s[5][5];
int i,j;
for(i=0;i<5;i++) /*数组赋初值*/
for(j=0;j<5;j++)
s[i][j]=0.0;
for(i=0;i<2;i++) /*输入2个学生3门成绩*/
for(j=0;j<3;j++)
scanf("%f",&s[i][j]);
ssa(s); /*调用函数计算每个学生的总分和平均分*/
cmm(s); /*调用函数计算每门课程的最高分和最低分*/
ca(s); /*调用函数计算每门课程的平均分*/
for(i=0;i<5;i++) /*输出运行结果*/
{
printf("\n");
for(j=0;j<5;j++)
printf("%8.1f",s[i][j]);
}
system("pause");
return 0;
}
void ssa(float s[5][5])
{
int i;
for(i=0;i<2;i++) /*这里要加大括号{}*/
{
s[i][3]=s[i][0]+s[i][1]+s[i][2];
s[i][4]=s[i][3]/3;
}
}
void cmm(float s[5][5]) /*这里与源程序变动多些*/
{
int i,j;
float ma,mi;
for(j=0;j<3;j++)
{
ma=s[0][j];
mi=s[0][j];
for(i=1;i<2;i++)
if(ma<s[i][j])
{
ma=s[i][j];
}
else
if(mi>s[i][j])
{
mi=s[i][j];
}
s[2][j]=mi;
s[3][j]=ma;
}
}
void ca(float s[5][5])
{int j;
for(j=0;j<3;j++)
s[4][j]=(s[0][j]+s[1][j])/2;
}
追问是这样的 我修改了 可是运行不了了大神 求解 能不能给我一个10个学生3门课程序
追答程序请看附件