若有以下程序 #include main() { int i,j=0; char a[]="How are you!"; for (i=0; a[i]; i++) if (a[i] != ’ ’) a[j++]=a[i]; a[j]=’\0’; pr

admin2020-05-19  28

问题 若有以下程序
#include
main()
{ int i,j=0;
char a[]="How are you!";
for (i=0; a; i++)
if (a != ’ ’) a[j++]=a;
a[j]=’\0’;
printf("%s\n",a);
}
则程序的输出结果是( )。

选项 A、Howareyou!
B、Howareyou
C、Hay!
D、How are you!

答案A

解析 for循环将非空格的字符放置到了数组前部(见语句"if (a != ? ?) a[j++]=a;"),然后在调整的非空格字符后面添加了字符串结束标识符,输出的即是去除了空格的字符串,答案选A。
转载请注明原文地址:https://jikaoti.com/ti/vEG0FFFM
0

最新回复(0)