在Tc2.0中的输入问题~!

bbcboy 2002-05-26 02:47:24
当我要输入多个字符时,第二次输入就直接跳过了!
请看:
printf(" please enter (Y\N):\n");
scanf("%c",&answer1);
printf("\n");
printf("Please enter (Y/N)");
scanf("%c",%answer2);
………………
当显示是,我输入:Y
回车!
这样当运行下一句scanf时,就不输入了!
我想是回车起作用!因为我只要输入一个字母的。
现在我要一个个Scanf能运行,请问太如何写?
用getchar好象也有同样问题!
我用了gerch(),既:answer1=getch(),但是不显示字母!

...全文
99 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
bbcboy 2002-05-26
  • 打赏
  • 举报
回复
问题已经解决,就是加上getchar();
谢谢大家!
bbcboy 2002-05-26
  • 打赏
  • 举报
回复
问题已经解决,就是加上getchar();
谢谢大家!
zhangze 2002-05-26
  • 打赏
  • 举报
回复
scanf()后然后用getch(),然后在scanf,主要是由于scanf函数遇到回车符表示出入结束,但scanf并不将回车符保存到变量中,于是,在下一个scanf函数中接受的将是回车符,我不知道可不可以这样,我没有试过:scanf()后,然后再scanf(),然后再重新scanf(),有谁试出来告我一声
sylmoon 2002-05-26
  • 打赏
  • 举报
回复
gz
hotter 2002-05-26
  • 打赏
  • 举报
回复
"scanf("%c",%answer2);"
这一句话是什么意思?“%”可以在scanf()里这么用吗?
sokoban 2002-05-26
  • 打赏
  • 举报
回复
风花雪月的答案应该是对的!!!!
cloud_leonhart 2002-05-26
  • 打赏
  • 举报
回复
是缓冲区的问题加getchar()
casho 2002-05-26
  • 打赏
  • 举报
回复
你第一次敲y 和回车,程序把它当两个字符,第一次接受一个y,第二个scanf接受一个回车,你是否明白,
QQ79665649,
xuying 2002-05-26
  • 打赏
  • 举报
回复
把最后一句改成:
scanf("%c\n",&answer2); //scanf中加上一个\n

就可以了,我测试过了。
Henry_Wu 2002-05-26
  • 打赏
  • 举报
回复
我试了下.
为什么两个scanf 在两个printf之间?
sandwish2000 2002-05-26
  • 打赏
  • 举报
回复
用fflush()函数清除键盘缓冲再scanf()
注意用#include<conio.h>
或者用getchar()来清除键盘缓冲中的回车!
他也被你的scanf接受了!
xuying 2002-05-26
  • 打赏
  • 举报
回复
把最后一句改成:
scanf("%c\n",&answer2); //scanf中加上一个\n

就可以了。
kof99th 2002-05-26
  • 打赏
  • 举报
回复
scanf("%c",&answer1);后加上getch();
此处用fflush(stdin);也可以。作用是清空缓冲区。
LiberSnake 2002-05-26
  • 打赏
  • 举报
回复
while((answer2=getchar())=='\n')
;
carbon107 2002-05-26
  • 打赏
  • 举报
回复
printf(" please enter (Y\N):\n");
scanf("%c",&answer1);
printf("\n");
printf("Please enter (Y/N)");
getch();
scanf("%c",%answer2);
………………
试试吧
liushmh 2002-05-26
  • 打赏
  • 举报
回复

printf(" please enter (Y\N):\n");
scanf("%c",&answer1);
getchar();
printf("\n");
printf("Please enter (Y/N)");
scanf("%c",%answer2);
getchar();
bbcboy 2002-05-26
  • 打赏
  • 举报
回复
不行啊!
同样跳过!!
garfield_82 2002-05-26
  • 打赏
  • 举报
回复
answer1=getch();==>answer1=getchar();

试试

70,032

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧