搜索
查看: 1991|回复: 9
打印 上一主题 下一主题

这是怎么回事? 编的 我觉得没问题啊

[复制链接]
跳转到指定楼层
楼主
发表于 2013-4-8 22:33:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
怎么   7的倍数和  带7的尾数都打出来了?

沙发
发表于 2013-4-8 22:39:40 | 只看该作者
a%10 != 7 || a % 7 != 0
a的末尾不是7,或者a不是7的倍数
板凳
 楼主| 发表于 2013-4-8 22:49:10 | 只看该作者
rosynirvana 发表于 2013-4-8 22:39
a%10 != 7 || a % 7 != 0
a的末尾不是7,或者a不是7的倍数

对啊 我就是让它们   打出来  结果  97  还有什么 14都出来了
地板
发表于 2013-4-8 22:53:05 | 只看该作者
bobiscool 发表于 2013-4-8 22:49
对啊 我就是让它们   打出来  结果  97  还有什么 14都出来了

因为97 % 7 != 0
所以就打印出来了
5#
发表于 2013-4-9 13:08:42 | 只看该作者
int main()
{
        int a = 1;
         while(a<=100)
        {
                if(a%10!=7&&a%7!=0)
                        printf("%d\n",a);
                a++;
        }
你是要打印100以内的不是7的倍数且个位不是7的所有整数吧,那两个判断条件之间应该用&&。
6#
 楼主| 发表于 2013-4-9 23:38:33 | 只看该作者
rosynirvana 发表于 2013-4-8 22:53
因为97 % 7 != 0
所以就打印出来了

97%10!=7  ????????????
7#
 楼主| 发表于 2013-4-9 23:38:59 | 只看该作者
一辈子的鱼 发表于 2013-4-9 13:08
int main()
{
        int a = 1;

不是  是  或者
8#
发表于 2013-4-10 00:56:06 | 只看该作者
bobiscool 发表于 2013-4-9 23:38
97%10!=7  ????????????

逻辑或里面只要有一个成立,整个式子就为真了
97%10 != 7为假,然后判断下一个条件
97 % 7 != 0为真,所以整个式子为真,所以打印
9#
发表于 2013-4-10 11:19:14 | 只看该作者
bobiscool 发表于 2013-4-9 23:38
不是  是  或者

那就只有77这个数才满足条件吧,它既是7的倍数个位又是7,两个条件都不满足,所以进不了循环,不被打印。用||意思是只要满足一个条件就会被打印出来。
10#
发表于 2013-4-14 05:37:45 | 只看该作者
首先,你要先理解什么叫"或",或的意思就是:全0出0,有1出1,也就是必须同时为假表达式才为假,否则为真;
像87,97 这类数就不能同时满足两个表达都为假的条件,所以就跑出来啰!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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