#include<stdio.h>
int main(){int i=1,j=2,k=3;if(i++==1&&(++j==3||k++==3))printf("%d %d %d\n",i,j,k);return 0;}
因为你写的是++j==3||k++==3,中间是或只要满足一个就会输出,所以++j在前面面满足了j=3,k++就不运行了直接输出
|| 只要满足前一个条件,就不会再执行后面的了,你可以换成 | 比较一下,后面这个都会执行