能否解释这段C语言代码的输出?输入值为love2code
代码输出结果解释
先看完整代码:
#include <stdio.h> int main(){ char arr[100]; printf("%d", scanf("%s", arr)); return 0; }
核心逻辑说明
scanf函数的返回值是成功读取的输入项个数,不是读取到的字符串长度或内容。- 这里用
%s作为格式控制符,它会读取从第一个非空白字符开始,直到遇到空白字符(空格、换行、制表符等)为止的连续字符。 - 输入值
love2code是无空白的连续字符串,scanf("%s", arr)成功读取了1个输入项,因此返回值为1。 - 最后
printf会输出这个返回值,所以程序最终输出结果是1。
内容的提问来源于stack exchange,提问作者Raghul
相关产品推荐
相关产品推荐

