C语言第五次作业
看书11.1,11.2
一、看书做笔记
1、11.1的笔记
2、11.2的笔记
二、编辑程序列表
三、存在的问题
1、在用指针数组编写藏头诗程序时不理解以下程序
for(i=0;i<4;i++){
mean[2*i]=*(peom[i]);
mean[2*i+1]=*(poem[i]+1);
}
结果:经过老师讲解,知道一个汉字需要俩个字符才能存入。所以这个式子就是分两步将一个汉字的两个字符输出。从而实现输出一个汉字。
2、二维数组中a与*a的区别:
虽然a与*a的值相同,但是含义不同。
(1)a是行元素的首地址,又称为行地址,是二级指针。
(2)而*a是首行第一个元素的地址,又称为列地址,是一级指针。
注意:由于有a[i]等价于*(a+i)的关系,因此既可以用下标表示法,也可以用指针表示法,或者是混合使用。
例如:a [ i ] [ j ]等价于*(*(a+i)+j),也可以写成*(a[i]+j)。
四、PTA中的问题
1、判断题、Int(*p)[4]它表示P是一个指针数组,包含4个指针变量元素。( F )
这题中P是一个指针变量,它包含四个元素的一维数组,所以本题错误。
函数题第四题