有以下程序 #include main() { char a[4][4]={’ ’}; int i,j; for(i=0;i

admin2015-07-28  21

问题 有以下程序
#include
main()
{ char a[4][4]={’ ’};
int i,j;
for(i=0;i<4; i++)
{ a[0]=a[3]=’#’;
for(j=1; j<3; j++)
{ a[0][j]=a[3][j]=’#’;
if((i!=0)&&(i!=3)) a[j]=’o’;
}
}
for(i=1;i<3; i++)
{ for(j=0; j<4;j++)
printf("%2c",a[j]);
printf("\n");
}
}
程序的运行结果是( )。

选项 A、 # o o #
# o o #
B、 # # # #
# o o #
C、 # o o #
# # # #
D、# # # #
# # # #

答案A

解析 两重循环的作用是将二维数组a[4][4]的第一列和最后一列的字符设为’#’(见语句"a[0]=a[3]= ?# ?;"),同时将第一行和最后一行的其他元素设为?# ?(见语句"a[0]=a[3]= ?# ?;"),其余元素设为?o?(见语句"if((i!=0)&&(i!=3)) a[j]= ?o?;"),输出的为第二三行的元素,所以答案选A。
转载请注明原文地址:https://kaotiyun.com/show/mzDp777K
0

最新回复(0)