选择题
有以下程序:
#include <stdio.h>
main()
{ char w[20],a[5][10]={'abcdef','ghijkl','mnopq','rstuv','wxyz'};
int i,j;
for(i=0;i<5;i++)
{ j=0;
while(a[i][j]!='\0') j++;
w[i]=a[i][j/2+1];
}
w[5]='\0';
puts(w);
}
程序运行后的输出结果是______。
A、
ekpuz
B、
agmrw
C、
flqvz
D、
djoty
【正确答案】
A
【答案解析】
在for循环中,执行完while语句,j值为字符串数组a的每行字符串的长度,因此w[i]=a[i][j/2+1]是将数组a的元素a[i][j/2+1]的值赋给一维数组w[i],比如i=0;j=6;a[i][j/2+1]=a[0][4]='e',将此值赋给w[0]。循环依次给数组w赋值,最后输出w,答案为选项A。
提交答案
关闭