00问答网
所有问题
scanf 格式占位符后加了换行符为什么不行?比如 scanf("%d\n",&a);键盘输入后,敲回车无反应
希望能听到本质原因
举报该问题
推荐答案 2012-10-30
你没有具体理解scanf()函数的格式。
scanf(“%d\n”,&a)中," "中的东西就是表示的输入格式,也就是你输入的东西是要按照" "中规定的格式来的。至于%d,因为它是转义字符,会被后面的a代替,所以你输入的时候应该是"a\n",不知道这样你能不能理解。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://00.wendadaohang.com/zd/ZInZennT0.html
其他回答
第1个回答 2012-11-06
其实\n不是回车键的ascii码,回车键的ascii码是/n,你这样写会导致\n无法匹配从而无法结束
第2个回答 2012-10-30
scanf("%d\n",&a);
需输入\n在按回车,或是把\n拿掉。
第3个回答 2012-10-30
顶楼
相似回答
C语言中
%d
和%d\
n
有
什么
区别啊?
答:
只有一个区别,在于
换行符
【\n】,即【%d】输出后不换行,而【%d\n】会换行。概念解析:1、%d---输出一个整型数。2、\n--- 回车换行。一、无换行符演示如下:1、【%d】代码:2、执行输出:二、换行符演示如下:1、【%d\n】代码:2、执行输出:...
从键盘输入
n(n
<10)个整数,然后根据提示选择输入'A'或者'D',如果输入...
答:
scanf(
"%d"
, &n);
printf("Input %d integers: ", n);while (i < n){scanf("%d", &(a[i])); //错误1:取地址取错误了(否则会篡改其它变量的值,本程序改了ch的值)i++;}printf("Input A or D: ")
关于
占位符
!高手进!
答:
占位符
格式占位符(
%)是在C/C++语言中格式输入函数,如
scanf
、printf等函数中使用。其意义就是起到格式占位的意思,表示在该位置有输入或者输出。格式字符说明
格式占位符(
%)可以以下字母配合使用用来表示某些特定的输入输出。 %a,%A 读入一个浮点值(仅C99有效) %c 读入一个字符 %d 读入十进制整...
...c1;
scanf(
"%4d%3c"
,&a
,&c1
);
printf("
%d
,%c\n",a,c1);}
答:
int a只取了4位“1234”;char只占1B,所以只取了‘5’,这个5是作为字符型输入的,剩余内容还在输入缓冲区里,如果这时你再进行输入操作,可能陷入死循环
;scanf
语句“ ”中除了
格式占位符
外最好不要加其他任何东西,更不要对输入进行限制,因为在输入缓存区被读空前进行输入操作一般都会出错 ...
大家正在搜
相关问题
C语言,用scanf时里面可以用换行符\n吗,比如scanf...
C语言中scanf怎样插入换行符?是scanf("%d\n"...
scanf回车后遗留的换行符问题
scanf("%d\n",&n)在后面加一\n会出现什么后果
scanf("%d",&a);不要用\n,为什么呢
C语言中关于scanf的问题:scanf("%d,%d\n"...
为什么scanf那一行语句加了\n得输入两次字符才能输出,去...
scanf("%d%d",&a,&b)与scanf("%d,...