
请问if(j%2)这步怎么理解,最后a输出多少?if的判断不应该是真吗?然后break跳出循环然后a=0吗?答案给的是a=1为啥

解释及执行过程如下:
j%2的意思是 取 j 除以2的余数,if(j%2)等价于 if(j%2==1)
if(j%2)的意思就是说,如果 j 除以2的余数为1(非0为真),if条件就成立,就执行if下面的break语句。
代码执行过程如下(以for循环为主):
j=0时,for循环执行过程如下:
j%2=0,if条件不成立,执行a++,a=1
j++,j=1
j=1时,for循环执行过程如下:
j%2=1,if条件成立,执行break,结束for循环
执行printf语句,打印a=1