关于scanf和\n的问题

来源:百度知道 编辑:UC知道 时间:2024/06/10 19:51:03
我写了一个小程序
#include <stdio.h>

void main()
{
int a;
printf("请输入一个数:\n");
scanf("%d",&a);
printf("请再输入一个数:\n");
scanf("%d",&a);
}
在执行第一个scanf是,我在控制台输入了"\n",然后我就不能执行第二个scanf了,这是为什么呢?

你都输入了,第一个是“\”
第二个是“n”

他们自动转换成 int 型

缓存中残留的回车符

'\n'表示回车,由printf打印出来了,不是要你输入的
scanf里的才是要输入的,输入整数回车整数回车就可以了