j=0的时候不是也成立嘛

img


为啥j等于0的时候没有成立。&&是有什么规则嘛?谁能告诉我一下

%是表示“取余数”,而0除以任何数后都不会存在余数,所以说余数为0,表示false,而要满足if条件,需要 j%2 和 j%3 都为true

&& 是and,两边都为true,结果才是true。0表示false

0%2值为0,条件不成立,转else分支去了啊。

在c中如果用if判断语句,if(i%2)相当于if(i%2!=0)
逻辑符号不等于是可以省略的,您说的j=0,条件是满足,但是满足的时else语句。

if ((j % 2) && (j % 3))这句等价于:if((j % 2 != 0) && (j % 3 != 0)) 或 if ((j % 2 == 1) && (j % 3 == 1))

你的j是个序号,不是你输入的内容呀
你判断j干啥呢??
你不是应该把getchar的内容先赋值给一个变量,然后判断变量吗
你现在getchar获得的内容直接丢弃了,没有赋值给任何变量,反而是在跟j较劲
j就是从0到24循环的,它是固定的,跟你输入什么没有关系呀