问题很怪

来源:百度知道 编辑:UC知道 时间:2024/07/02 06:29:27
#include<stdio.h>
void main()
{
scanf("pulushi\n");
printf("123\n");
}
为什么我必须输入两个pulushi才能输出`123?

因为scanf("pulushi\n"); 中输入pulushi后要求再输入字符\n,而空白字符(包括'\n','\t',' '--空格)输入时要求是任意多个任意空白字符,包括回车键(实际输入的为换行的ASCII码)、TAB键以及空格键。
所以该程序当你原样输入pulushi后,再输入任意多个回车键)、TAB键或空格键都不会结束,但只要输入其它字符就会结束输入语句而输出"123\n"。
所以,应该说必须要求你输入一个pulushi及任意非空白(注意“白”)键,就会输出123!

因为你上面那句是输入pulushi

SCANF是这样用的吗
不是吧
定义个变量,以格式确定后输入