首页 > 试题广场 >

下面程序段的运行结果是?

[单选题]
下面程序段的运行结果是:
char C[5] = {'a', 'b', '\0', 'c', '\0'};

printf("%s", C);

  • ’a’’b’
  • ab
  • ab_c
  • ab_c_(其中_表示空格)
推荐
B
字符数组以\0结尾,所以扫描到'\0'字符时就返回结果。
引申一下,
char c[5] = { 'a', 'b', 's', 'c', 'd' };
printf("%s", c);
//这样会数组溢出(over flow),因为C风格的字符串会默认加一个'\0'
编辑于 2015-10-25 12:35:16 回复(5)
答案:B
原因:%s格式符意为输出字符串,输出字符串时,遇到 “\0”表示结束,所以结果是ab;
发表于 2015-10-26 23:32:36 回复(0)
B
遇到 ‘\0’就停止了
发表于 2015-10-26 16:41:18 回复(0)
1.C语言字符串以'\0'结尾,扫描到即结束 2.char c[5] = { 'a', 'b', 's', 'c', 'd' }; printf("%s", c); 不会溢出!
编辑于 2019-08-29 21:36:42 回复(0)
%s输出字符串
发表于 2023-10-30 20:23:33 回复(0)
printf遇到“/0”就会结束打印
发表于 2023-04-06 22:13:56 回复(0)
C直接访问可以当成指针地址来用 遇到/0就结束
发表于 2017-08-26 18:58:06 回复(0)
b 以‘\0‘结尾
发表于 2016-12-27 08:51:15 回复(0)
b 字符串以'\0'为结尾
发表于 2015-10-25 21:47:33 回复(0)
B
发表于 2015-10-25 20:20:37 回复(0)
真会发钱么?

发表于 2015-10-25 19:44:41 回复(0)
B  字符串以'\0'为结尾
发表于 2015-10-25 18:29:38 回复(0)
B 字符串以'\0'为结尾
发表于 2015-10-25 15:34:38 回复(0)
B
发表于 2015-10-25 13:08:51 回复(0)
B
发表于 2015-10-25 11:58:47 回复(0)