C语言:假如我要输入一个数字,代表某样东西的数量,但是我要的是只能输入数字,输入别的字符都显示输入错

C语言:假如我要输入一个数字,代表某样东西的数量,但是我要的是只能输入数字,输入别的字符都显示输入错误,“请重新输入”。请问该怎么编程。请能人在重要位置标上注释。是不是要... C语言:假如我要输入一个数字,代表某样东西的数量,但是我要的是只能输入数字,输入别的字符都显示输入错误,“请重新输入”。请问该怎么编程。请能人在重要位置标上注释。
是不是要先定义为char 类型,然后用ASCII码定范围?
展开
 我来答
hbc7025
2011-07-31 · TA获得超过340个赞
知道小有建树答主
回答量:195
采纳率:0%
帮助的人:124万
展开全部
嗯,用char定义好变量后,可以用if语句或者用switch语句来判断输入的是否为数字字符,如果要用这些输入的字符来计算的话,就转到数字,再计算就OK了。
先按这思路自己编编吧!真的编不出来再问问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
晓木哥
2011-07-31 · TA获得超过617个赞
知道答主
回答量:86
采纳率:0%
帮助的人:80.9万
展开全部
对滴,定义为char类型
#include<stdio.h>
int main()
{
char c;
scanf("%c",&c);
if(c<'0'||c>'9') {printf("请重新输入!\n");return 0;}
printf("c=%c\n",c);
return 0;

}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
dongyue2008
2011-07-31 · TA获得超过3604个赞
知道大有可为答主
回答量:1300
采纳率:100%
帮助的人:597万
展开全部
试一下下面的代码,你就知道了^_^
#include <stdio.h>
void main()
{
int n;
while (scanf("%d",&n)!=1)// 检查成功赋值的数据项个数是否为 1 个
{
printf("Error! You should input a digit!\n");
fflush(stdin);// 刷新输入缓冲区
}
printf("The digit is %d\n",n);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chenwu1
2011-07-31
知道答主
回答量:65
采纳率:0%
帮助的人:15.3万
展开全部
嗯,是的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式