Chulainn 发表于 2017-6-22 16:28:33

当输入一个不合适的数时候,如何抵御?

我想达到这样一个效果:当输入一个<0或>10的数时,它会一直显示“error”,一直到我输入一个合适的数为止,按回车,它运行。

比如我输入45,显示error;再输入23,显示error;再输入3,直接显示3!=6

代码写到了这里。

#include<stdio.h>
void main()
{
        int i=1,c=1,n;
        scanf("%d",&n);
        if(n>10||n<0)
        {
                printf("error\n");
        }
        while(n>0&&n<=10&&i<=n)
        {
                c=c*i;
                i++;
                printf("%d!=%d\n",n,c);
        }
       
}          




请大佬能否给我具体的解答,不要那么模糊好不好?

谢谢啦

ButcherRabbit 发表于 2017-6-22 17:03:04

比如我输入45,显示error;再输入23,显示error;再输入3,直接显示3!=6
说明你要打印的error要在循环里面#include<stdio.h>
void main()
{
      int i=1,c=1,n;
      scanf("%d",&n);
      while(n>10||n<0)
      {
                printf("error\n");
                scanf("%d",&n);
      }
      if(n>0&&n<=10&&i<=n)
      {
                c=c*i;
                i++;
                printf("%d!=%d\n",n,c);
      }
      
}         

不清楚代码对不对。。你自己调试喽,无聊来灌水的

Chulainn 发表于 2017-6-22 21:39:34

ButcherRabbit 发表于 2017-6-22 17:03
比如我输入45,显示error;再输入23,显示error;再输入3,直接显示3!=6
说明你要打印的error要在循环里 ...

谢谢对的{:5_91:}{:5_106:}{:5_92:}
页: [1]
查看完整版本: 当输入一个不合适的数时候,如何抵御?