当前位置: 代码迷 >> C语言 >> [求助]如何判断是否为数字
  详细解决方案

[求助]如何判断是否为数字

热度:287   发布时间:2007-04-13 15:41:44.0
[求助]如何判断是否为数字

这是一个简单的计算器,我想约束用户只能输入数字,即当用户输入键盘上其它非数字按键时,提示必须输入数字,该怎么判断,请高手指点,谢谢

#include<stdio.h>
void main()
{
float num1,num2,result;
char op,ans='y';
do
{
printf("请输入第一个数字:");
fflush(stdin);
scanf("%f",&num1);
printf("\n请输入运算符:");
fflush(stdin);
scanf("%c",&op);
printf("\n请输入第二个数字:");
fflush(stdin);
scanf("%f",&num2);
switch(op)
{
case '+':
result=num1+num2;
break;
case '-':
result=num1-num2;
break;
case '*':
result=num1*num2;
break;
case '/':
if(num2!=0)
{
result=num1/num2;
break;
}
else
{
printf("\n注意:除数不能为零,请重新输入!\n\n");
continue;
}
default:
printf("\n提示:请在+ - * /中做出选择!\n\n");
continue;
}

printf("%5.2f%c%5.2f=%5.2f\n",num1,op,num2,result);
printf("\n是否继续进行计算(Y/N)?\n");
scanf(" %c",&ans);
while(ans!='Y' && ans!='y' && ans!='N' && ans!='n') //提示是否计算后,用户必须在'y'和'n'中进行选择
{
printf("请在Y和N中做出选择!\n");
scanf(" %c",&ans);
}
}while(ans=='Y'||ans=='y');
}

搜索更多相关的解决方案: 数字  判断  

----------------解决方案--------------------------------------------------------


----------------解决方案--------------------------------------------------------

不知道你能否打开啊,是C#.net写的


----------------解决方案--------------------------------------------------------
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar < '0' || e.KeyChar > '9')
{
e.Handled = true;
}
}
----------------解决方案--------------------------------------------------------

----------------解决方案--------------------------------------------------------
我没有.net
----------------解决方案--------------------------------------------------------
用字符串输入 你要记录的数据.然后在每个字符判断就可以了
----------------解决方案--------------------------------------------------------

do
{
scanf("%s",a);//a为一数组
for(i=0;i<strlen(a);i++)
if(a[i]<'0'||a[i]>'9')
{printf("您只能输入数字\n");
continue;
}
}while(i==strlen(a);
n=atoi(s); //将字符串转换为整型赋给n


----------------解决方案--------------------------------------------------------
还有不要忘了加入头文件 #include <ctype.h>(atoi包含在这个头文件中)

----------------解决方案--------------------------------------------------------
为什么不用这个函数

int isdigit(char ch)
----------------解决方案--------------------------------------------------------
  相关解决方案