问题
填空题
以下程序运行后的输出结果是______。 #include<string.h> main() {char ch[]="abcd",x[4][4];int i; for(i=0;i<4;i++)strcpy(x[i],ch); for(i=0;i<4;i++)printf("%s",&x[i][i]); printf("\n"); }
答案
参考答案:abcdabcdabcdabcdbcdabcdabcdcdabcdd
解析: 本题考查的是二维数组。本题定义了一个4行4列的二维数组x,通过for循环以及strcpy函数将字符数组cb的值’abed’分别复制到了x数组的每一行,使得二维数组每一行的值均为’abcd’,再通过第二个for循环输出每一行上所要求输出的字符串,当i=0时。输出以x[0][0]的地址为首地址的字符串“abed”;当x=1时,输出以x[1][1]的地址为首地址的字符串“bed”;当x=2时,输出以x[2][2]的地址为首地址的字符串“cd”;当x=3,输出以x[3][3]地址为首地址的字符串“d”。