有以下程序(strcat函数用于连接两个字符串): #include<stdio.h> #include<string.h> main() { char a[20]="ABCD\0EFG\0",b[]="IJK"; strcat(a,b); printf(

admin2017-12-13  23

问题 有以下程序(strcat函数用于连接两个字符串):
#include<stdio.h>
#include<string.h>
main()
{
char a[20]="ABCD\0EFG\0",b[]="IJK";
strcat(a,b);
printf("%s\n",a);
}
程序的运行结果是(    )。

选项 A、IJK
B、ABCDE\0FG\0IJK
C、ABCDIJK
D、EFGIJK

答案C

解析 字符数组a中包含两个’\0’,遇到第一个’\0’时就表示字符串a结束。字符串处理函数strcat(字符数组a,字符数组b),功能是连接两个字符数组中的字符串,把字符串b连接到字符串a的后面,结果放在字符数组a中。连接时将字符串a后的’\0’取消,只在新串最后保留一个’\0’。本题相当于将"ABCD"和"UK"连接,因此C选项正确。
转载请注明原文地址:https://kaotiyun.com/show/Hmxp777K
0

最新回复(0)