gpt4 book ai didi

c - 我想知道当 if(i%2) 它检查什么来继续时会发生什么。它错过了 == 但它打印出的总和为 20?为什么?

转载 作者:行者123 更新时间:2023-11-30 21:02:18 25 4
gpt4 key购买 nike

#import <stdio.h>
int main(void) {
int sum,i;
sum = 0;
for(i=0;i<10;i++) {
if(i%2)
continue;
sum+=i;
}
printf("\n%d",sum);
return 0;
}

上面的代码中 if(i%2) 是如何工作的?

最佳答案

In computing, the modulo operation finds the remainder after division of one number by another (sometimes called modulus).% is the modulus operator.

因此 i%2 返回 i 除以 2 后的余数。
因此如果 i 是奇数 i%2=1(TRUE)
否则为 0(FALSE)。(偶数条件)

因此,如果 i 是偶数,则将 i 添加到总和中,否则循环将继续。

关于c - 我想知道当 if(i%2) 它检查什么来继续时会发生什么。它错过了 == 但它打印出的总和为 20?为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31121620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com