搜索
查看: 912|回复: 6
打印 上一主题 下一主题

判断是否为1-9的正整数,为什么不行?

[复制链接]
跳转到指定楼层
楼主
发表于 2013-11-30 10:34:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
int a;
    scanf("%d",&a);
    if (a<=9 && a>0);
        printf("yes");
system("pause");
return 0;

为什么运行后,不管输入什么数,都是yes,
如果我加上else  printf("no");  又编译失败。
另外,是不是书上所有程序都是一次运行的。 我输入一个数字,判断完后再键入任意键,就退出程序了。

最佳答案

查看完整内容

if那一行最后多了个分号,相当于没写 要想输入多次要自己写个循环
沙发
发表于 2013-11-30 10:34:14 | 只看该作者
if那一行最后多了个分号,相当于没写

要想输入多次要自己写个循环
板凳
发表于 2013-11-30 15:09:33 | 只看该作者
  1. #include <stdio.h>
  2. int main()
  3. {
  4.     int a;
  5.     while(1)
  6.     {
  7.         scanf("%d",&a);
  8.         if(a>0&&a<10)
  9.             printf("YES\n");
  10.         else
  11.             printf("NO\n");
  12.     }
  13.     return 0;
  14. }
复制代码
地板
发表于 2013-11-30 15:09:36 | 只看该作者
  1. #include <stdio.h>
  2. int main()
  3. {
  4.     int a;
  5.     while(1)
  6.     {
  7.         scanf("%d",&a);
  8.         if(a>0&&a<10)
  9.             printf("YES\n");
  10.         else
  11.             printf("NO\n");
  12.     }
  13.     return 0;
  14. }
复制代码
5#
发表于 2013-11-30 16:34:57 | 只看该作者
速度好快                        
6#
发表于 2013-11-30 22:37:25 | 只看该作者
if (a<=9 && a>0);应该没有;
7#
发表于 2013-12-7 14:36:27 | 只看该作者
猪笼草 发表于 2013-11-30 22:37
if (a0);应该没有;

注意符号(;)(;)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表