有以下程序: #include<stdio.h> #include<string.h> main() {int i,len; char b[]="Welcome you to Beijing!"; len=strlen(b); for(i=0;i<len;

admin2019-07-25  44

问题 有以下程序:
#include<stdio.h>
#include<string.h>
main()
{int i,len;
char b[]="Welcome you to Beijing!";
len=strlen(b);
for(i=0;i<len;i++)
if(b=’ ’)
{strcpy(b,b+i+1);
i=0;
}
printf("%s\n",b);
}
程序运行后的输出结果是(  )。

选项 A、Beijing!
B、to Beijing!
C、Welcome you to Beijing!
D、you to Beijing!

答案A

解析 strcpy(char*dest,char*source)函数是将soure指向的字符串复制到dest指向的内存空间,所以for循环在遍历字符数组b的同时,查找b中的空格字符,将空格字符后的剩余字符串重新复制到字符数组b中,然后重新设置循环的索引下标为0,继续寻找空格字符,直到到达字符串的结尾空字符’\0’,由此可知整个程序是获取字符串“Welcome you Beijing!”的最后一个不包含空格亨符的子串,程序输出;“Beijing!”,答案选A。
转载请注明原文地址:https://kaotiyun.com/show/lpID777K
0

最新回复(0)