数组与指针关系
数组名,其实就是数组的首地址,也是一个常量指针(参考第八章指针)。比如:
int a[10];
a的类型其实就是:int *const a,常量指针;
因此a的值(地址)不能再改变。但我们可以通过指针的方式来访问数组:
&a[i], a+i都是元素i的地址,而*(a+i)就是a[i];
当然,也可以定义一个int类型的指针,指向数组的首地址:
int *pa=&a[0];
或者:
int *pa=a;
那么也可以通过
pa+i来求出第i个元素的地址,而通过pa[i]或者*(pa+i)来访问第i个元素。
思考与练习:
一个学习小组有5个人,每个人有三门课的考试成绩。求全组分科的平均成绩和各科总平均成绩。
提示,定义int score[3][5]二维数组来表示5个人3科的成绩。