鱼C论坛

 找回密码
 立即注册
查看: 51|回复: 3

[已解决]求助

[复制链接]
发表于 5 天前 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
#include <stdio.h>

int main()
{
        int i, sum = 0;

        for (i = 0; i < 1000; i++)
        {
                if (!(i % 3) || !(i % 5))
                {
                        sum += i;
                }
        }

        printf("%d\n", sum);

        return 0;
}
有没有人告诉我一下,这个表达式里的感叹号是什么意思。
!=这个是不等于,那单个!是什么意思
最佳答案
5 天前
本帖最后由 昨非 于 2021-1-13 23:56 编辑

bool值的取非操作
是true(1)则变为false(0)
是false(0)则变为true(1)
这里
if (!(i % 3) || !(i % 5))的条件等价于
if (!(i % 3!=0) || !(i % 5!=0))
翻译一下也就是:
如果:i%3=0 或 i%5=0 时:
当:i被三整除或被五整除时
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 5 天前 | 显示全部楼层    本楼为最佳答案   
本帖最后由 昨非 于 2021-1-13 23:56 编辑

bool值的取非操作
是true(1)则变为false(0)
是false(0)则变为true(1)
这里
if (!(i % 3) || !(i % 5))的条件等价于
if (!(i % 3!=0) || !(i % 5!=0))
翻译一下也就是:
如果:i%3=0 或 i%5=0 时:
当:i被三整除或被五整除时
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 5 天前 | 显示全部楼层
这里的话,就是满足i不能被3整除或者i不能被5整除的时候,执行if的{}的代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 5 天前 | 显示全部楼层
本帖最后由 jackz007 于 2021-1-13 23:59 编辑

       ! 是逻辑非,其效果是对表达式的原逻辑值取反。
      例如, 如果 i 能够被 3 整除,那么,i % 3 的值就是 0,逻辑值为 false, ! (i % 3) 的逻辑值与 i % 3 正好相反,为 true,就是说, ! (i % 3)  的逻辑值在 i 能够被 3 整除的时候为 true,否则为 false。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1

GMT+8, 2021-1-18 00:01

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表