问题 单项选择题

以下程序
#include<stdio.h>
#include<string.h>
main()
char*p1="abc",*p2="ABC",str[50]="xyz";
strcpy(ar+2,strcat(p1,p2));
printf("%s\n",str);

的输出是______。

A.xyzabcABC

B.zabeABC

C.yzabcABC

D.xyabcABC

答案

参考答案:D

解析:[评析] strcat(p1,p2)将字符串abcABC防到了*p1所指向的存储单元中:strcpy在本题将abcABC复制到str+2所指向的存储单元中,即覆盖原str数组中的字符z及其后的所有字符, 故str的值为“xyabcABC”。

解答题
单项选择题