c++if语句问题,具体见图

图中第十题

img


if(i%2)是啥意思?没有给出余数要等于多少呀。

i%2得结果为0逻辑值就是假,为1逻辑值就是真

i%2一共就2种可能,要么1,要么0
而c++类型是可以隐式转换的,1=true,0=false

i%2 取余 余数要么是 0 要么是1 if(1) 表示条件符合判断为真, if(0) 表示条件不符合判断为假(其实只要!=0 就是真)这句话的意思是 如果是奇数 就执行下面的语句。

i%2是i除以2的余数,只有0和1两种值,i%2 等于0的时候,表示i是偶数,i%2等于1的时候表示i是奇数。
if(i%2)也就是当i是偶数时执行cout << (char)(i+b);
else部分就是当i是奇数时执行cout << (char)(i+c);