数组名做参数问题??

来源:百度知道 编辑:UC知道 时间:2024/05/31 08:48:08
题目:有a个学生,每个学生学b门课,已知所有学生的各门课的成绩,求每个学生

的平均成绩

课程1 课程2
学生1 89 88
学生2 99 87

void stud_ave(int a ,int b,float score[])
{/*求每个学生平均成绩并输出的函数 */}

#define a 2
#define b 2
main(){
void stud_ave(int x,int y,float score[]);
float score[a][b]={{89,88},{99,87}};
stud_ave(a,b,score);//请问这里为什么不是score[0]?
}
实参中score是2维数组,形参中score是一维数组,实参中如果用score应该不匹配了

同上。不好说。。。
而且你定义时#define a 2和#define b 2
也不是很好。可以用常变量来定义。
你的二维数组定义的是2*2=4 而你在score[a][b]中只定义了两个学生的成绩。

建议用结构体!
二维数组就是一维数组的数组,自己多把书上的例题敲两遍,就会明白的 我也不知道怎么给你说.
数组在传递值时,用数组名;