题目
以下程序执行后的输出结果是________。#include<stdio.h>#include<string.h>void main( )( static char s1[50]={"some string *");static char s2[ ]=("test");printf("%d,",strlen(s2));strcat(s1,s2);printf("%sn",s1);}A. 13,some string *test B. 13some string *test C. 4,test D. 4,some string *test
以下程序执行后的输出结果是________。
#include<stdio.h>
#include<string.h>
void main( )
{ static char s1[50]={"some string *"};
static char s2[ ]={"test"};
printf("%d,",strlen(s2));
strcat(s1,s2);
printf("%s\n",s1);
}
A. 13,some string *testB. 13some string *test
C. 4,test
D. 4,some string *test
题目解答
答案
是: D 你选择的答案是:未选 ×
解析
步骤 1:分析程序中的字符串
程序中定义了两个字符串变量:s1 和 s2。s1 的初始值为 "some string *",s2 的初始值为 "test"。
步骤 2:计算字符串 s2 的长度
使用 strlen 函数计算字符串 s2 的长度。strlen 函数返回字符串的长度,不包括终止符 '\0'。因此,strlen(s2) 的结果为 4。
步骤 3:连接字符串 s1 和 s2
使用 strcat 函数将字符串 s2 连接到字符串 s1 的末尾。strcat 函数将 s2 的内容追加到 s1 的末尾,覆盖 s1 末尾的终止符 '\0',并在新的字符串末尾添加终止符 '\0'。因此,连接后的字符串 s1 的值为 "some string *test"。
步骤 4:输出结果
程序首先输出字符串 s2 的长度,然后输出连接后的字符串 s1。因此,程序的输出结果为 "4,some string *test"。
程序中定义了两个字符串变量:s1 和 s2。s1 的初始值为 "some string *",s2 的初始值为 "test"。
步骤 2:计算字符串 s2 的长度
使用 strlen 函数计算字符串 s2 的长度。strlen 函数返回字符串的长度,不包括终止符 '\0'。因此,strlen(s2) 的结果为 4。
步骤 3:连接字符串 s1 和 s2
使用 strcat 函数将字符串 s2 连接到字符串 s1 的末尾。strcat 函数将 s2 的内容追加到 s1 的末尾,覆盖 s1 末尾的终止符 '\0',并在新的字符串末尾添加终止符 '\0'。因此,连接后的字符串 s1 的值为 "some string *test"。
步骤 4:输出结果
程序首先输出字符串 s2 的长度,然后输出连接后的字符串 s1。因此,程序的输出结果为 "4,some string *test"。