c语言scanf问题

我只定义一个输入语句输入一个值,为什么运行时要输入两次值,一个是我要的,另一个无论怎样都无事,咋解决啊!
int a;
scanf("%d\n",&a);
printf("%d\n",a);
………
初学,请谅解
比如说,我输入一个1然后再回车,他又跳到第二行,又可以输入了,我又输入个2再回车,然后他输出的值为1

看 scanf("%d\n",&a); 句, 你在这里多使用了一个 "\n" , 它在输出句中是换行,在输入句中就自找麻烦了,让你必需输入回车。

去掉它再试试 吧。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-19
scanf("%d\n",&a);
把\n去掉
一般来说,在scanf中不需要换行这个字符
回车就换行了,\n这个没有意义
第2个回答  2012-12-19
scanf("%d",&a);//不要 \n
第3个回答  2012-12-19
int a;scanf("%d",&a);printf("%d\n",a);
第4个回答  2012-12-19
scanf("%d\n",&a); 只有个a,只是输入一个值啊
第5个回答  2012-12-19
scanf("%d",&a);//不要 \n
相似回答
大家正在搜