第一次循环,先输出1,3
然后a=(3-1) * 2 + 3 = 7
b = (7-3) * 2 + 7 = 15
if(i++%2==0)是先判断i%2==0,然后i加1。此时i=1,所以不满足条件,不输出换行符,i加1后为2
再次循环,输出a,b为7,15
a=(15-7) * 2 + 15 = 31
b = (31-15) * 2 + 31 = 63
由于i为2,所以输出换行符,i加1后为3
继续循环,输出31,63
a=(63-31) * 2 + 63 = 127
b = (127 - 63) * 2 + 127 = 255,由于i为2,不输出换行符,然后i加1为4
由于b大于100,循环结束。
最后输出为
1,37,15
31,63
因为1,3输出后没有输出换行符,所以1,3和7,15输出在同一行
我教你个方法,你复制到c++上自己试试
因为7是跟上一个结果再一起的呀, 输出是1 3 7 15,但是输出3之后 i++%2==0 1%2不满足=0,不换行,后边接着前边的 1,3就变成 1,37,15