问题 单项选择题

下面程序的输出结果是______。
#include<string.h>
main()
char*p1="abc",*p2="ABC",s[20]="xyz";
strcpy(s+1,p2);
strcat(s+2,p1);
printf("%s\n",s);

A) xABCabc
B) zABCabc
C) yzabcABC
D) xyzABCabc

答案

参考答案:A

解析: strcpy(s+1,p2)是字符串复制,s中的内容变为"xABC",strcat(s+2,p1)是字符串连接(s的内容已不是初始化的内容,而是复制之后的内容),结果为"xABCabc"。

多项选择题
单项选择题