问题 单项选择题

下面程序的输出结果为______。
#include<string.h>
main()

char p1[7]="abc",p2[]="ABC",str[50]="xyz";
strcpy(str,strcat(p1,p2));
printf("%s",str);

A.xyzabcABC

B.abcABC

C.xyzabc

D.xyzABC

答案

参考答案:B

解析:[评析] strcpy(str1,s1):作用是将字符串s1拷贝到字符数组str1中去。strcat(字符数组1,字符数组2):把字符串2接到字符串1的后面,结果放在字符数组1中,函数调用后返回字符数组1的地址。
本题定义了三个字符数组p1,p2,str,strcat(p1,p2)函数的作用是将字符串数组p2接到字符串p1的后面,结果放在字符数组p1,再通过strcpy()函数将该字符串拷贝到str数组中,原str数组中的字符串xyz被覆盖,因此打印输出字符串str即可得到abcABC。

填空题
单项选择题 A1/A2型题