C语言编程中如何去防止用户输入错误的数据类型

如果我需要输入一个编号(限定范围为1-50)时,要阻止用户输入错误的数据类型(比如字母a),该如何解决?... 如果我需要输入一个编号(限定范围为1-50)时,要阻止用户输入错误的数据类型(比如字母a),该如何解决? 展开
 我来答
德昂当
推荐于2017-12-16 · TA获得超过2842个赞
知道大有可为答主
回答量:1074
采纳率:100%
帮助的人:753万
展开全部
可以用 ch=getch();一个个字符的输入,然后判断符不符合孝胡要求,符手宴合就把它再用 putchar(ch) ;输出来,不符合就扔掉。

getch()是无回显的输入函数,巧薯拦就是输入时,屏幕上不会显示
追问
你好,能麻烦写一个大致的代码吗,我是初学者很多东西不知道怎么下手。
这是原先我写的限定范围为1-50的代码:
while(scanf("%d",&comm[m].num))
{
if(m>50||m<0)
{
continue;
}
追答
你上面写的程序不知道要输入给哪个? 给 m还是 comm[m].num,我下面改的给m中输入一个1-50的数。
do{
scanf("%d",&m);
}while(m>50||m<=0);
这个程序就是一定要输入一个符合的数给 m;输错了也会显示出来。
afanihao_cn
2015-03-18 · TA获得超过155个赞
知道小有建树答主
回答量:257
采纳率:50%
帮助的人:167万
展开全部
好多学生一年到头只学了一上printf, scanf,蠢败还不知道scanf是有返回值的。。。
int n = 0;
int ret = scanf("%d", &n);
if( ret != 1)
{
// 输入错误
}
" 1000道C语言和C++语言的练习题笔试题及答案 " 不知道是第几题啊,亮衫反正这不敬档腔算个事。。。
追问
我刚学习C语言1个月,学校还没有开这门课,现在做的这个程序也是在丰富知识而已。
我跟你问问题,你说我不会学。
追答
已经给你答案了啊,照抄就行了啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式