当前位置: 代码迷 >> C语言 >> 求助!循环问题!
  详细解决方案

求助!循环问题!

热度:279   发布时间:2006-02-28 10:22:00.0
求助!循环问题!

各位请看看下面的小程序:当我输入数字的时候,因为isdigit函数的参数当是数字是返回一个真值。既然返回真值,那么就不等于0,那为什么还执行循环呢?
#include <stdio.h>
#include <ctype.h>
main()
{ int n;
do
{
printf("input a nummber");
scanf("%d",&n);
}while(0==isdigit(n));
return ;
}

搜索更多相关的解决方案: return  include  

----------------解决方案--------------------------------------------------------
请看isdigit()的原型, int isdigit(char c)
----------------解决方案--------------------------------------------------------
char和int 不是可以通用吗
----------------解决方案--------------------------------------------------------
晕啊你  假如你输入的是 9  程序会以为它是一个ASCⅡ码 为9的字符
----------------解决方案--------------------------------------------------------
你属于一个48--57 之间的数字看你的程序,肯定只执行一次
----------------解决方案--------------------------------------------------------
那我如果输入48-57之间的数字isdigit函数把参数当作字符吗?
----------------解决方案--------------------------------------------------------
ASCⅡ48-57之间  对应的就是数字嘛
----------------解决方案--------------------------------------------------------
书上是这么说的:
int isdigit(int c)
如果c是一个数字,返回一个真值,否则返回0;
那上边的程序只要输入数字就应该只执行一次啊!

----------------解决方案--------------------------------------------------------
你仔细看看书吧
----------------解决方案--------------------------------------------------------

我的书上是 char


----------------解决方案--------------------------------------------------------
  相关解决方案