填空题 请补充main()函数,该函数的功能是:输出一个44的矩阵,要求必须使用行指针表示输出变量。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在main()函数的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdlib.h>
#include<stdio.h>
void main()
{
static int art[4][4]={{9, 8, 7, 6},
{6, 5, 4, 3},
{3, 2, 1, 0},
{2, 4, 6, 8}};
int(*p)[4], j, i;
p= 1;
system("CLS");
for(i=0; i<4; i++)
{
printf("/n/n");
for(j=0; j<4; j++)
printf("%4d", 2);
}
}
【正确答案】
【答案解析】arr *(*(p+i)+j)[解析] 题目中要求必须使用行指针表示输出变量,由程序可知变量p为行指针,其应该初始化为数组的首地址,因此第一处应填“arr”;每输出一个数组元素时,变量p为上一行的朱地址加上该行的偏移量,因此第二处填“*(*(p+i)+j)”。