永发信息网

一道调用C语言问题

答案:4  悬赏:30  手机版
解决时间 2021-07-19 06:22
  • 提问者网友:放下
  • 2021-07-19 02:49
因为是初学者,现在正在学习函数的调用,所以我们写的程序一定要有函数的调用;
题目是:
输入3个学生5门课程的成绩,分别用函数求:(1)每个学生的平均分;(2)每门课程的平均分;(3)找出最高的分数所对应的学生和课程。
我先写第一个学生的平均分。程序如下
main()
{
float age(int a[3][5]);
int a[3][5],i,j;
float b;
clrscr();
for(i=0;i<3;i++)
for(j=0;j<5;j++)
scanf("%d",&a[i][j]);
b=age(a[3][5]);
printf("mei ke kpf:%.2f",b);
}
float age(int a[3][5])
{
float kpf,i=0;
int j;
for(j=0;j<5;j++)
i=i+a[0][j];
kpf=(float)i/5;
return(kpf);
}
这样调试不出来。总是提示错误。原因是??
还有我的返回值是只是一个,但是要有3个同学的每科平均 。怎么把三个值返呢?
最佳答案
  • 五星知识达人网友:持酒劝斜阳
  • 2021-07-19 03:50

for(j=0;j<5;j++)
i=i+a[0][j];


-----------------------------------


这句,只计算了第一个学生的平均成绩,所以最好是:


float[] age(int a[3][5])


{


float kpf[3];


...


//省略,这里是双重循环,kpf分别放三个平均值


return kpf;


}



调用时float[3] b=age(a[3][5]);(还是这样写?float b[3]=age(a[3][5]);忘了...)



全部回答
  • 1楼网友:像个废品
  • 2021-07-19 06:50

用excel函数和条件格式可以很简单实现

  • 2楼网友:一袍清酒付
  • 2021-07-19 05:40
你娃儿不得行,代码都写错了!
  • 3楼网友:渡鹤影
  • 2021-07-19 04:36

首先,那个age可以传入三个参数,分别表示三个学生的同一门课程的成绩

然后循环调用五次这个函数,就可以得到三个学生的每科平均了

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯