C语言中,scanf时输入数据时, 如何忽略输入的字符?

 我来答
百度网友1ee4b67
推荐于2017-10-13 · TA获得超过152个赞
知道答主
回答量:47
采纳率:0%
帮助的人:61.6万
展开全部
你的意思是输入多简友余的字符吧?
1、因为你用scanf输入的字符都是输入到缓冲区中的,例如你定义了一个只接受一个字符的变量ch,但却输入了多余的字符,这种情况会给编译器造成困扰,因为他并不完全智能,通常采用这种方法释放掉缓冲区内多余的字符输入;例如:
2、char ch;
scanf("%c", &ch);//假如你不小心输入了多个字符
//高高解决方法如下
while (‘\n’ != getchar())
{continue;}//这里的原理一不断的用getchar读取缓冲区内的字符,并将其废戚咐尺弃掉,直到遇到你输入的回车符(当然也可以是别的输入结束符);
更多追问追答
追问
我原本输入的是数据,但是程序写完我输入单个字符或字符串程序就出错,所以我想在输入时,不识别字符。
追答
字符和字符串也是数据啊,你输入的是什么类型的数据呢最好能贴个代码什么的。。。嘿嘿
问题不断534
2013-05-24
知道答主
回答量:2
采纳率:0%
帮助的人:2.7万
展开全部
输入完数据,紧跟着一个getchar()可以吸收一个字符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
buxingxing0123
2013-05-24 · TA获得超过281个赞
知道小有建树答主
回答量:396
采纳率:0%
帮助的人:288万
展开全部
1. 接收了,不使用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式