int xx ,y=3,z=2; xx=(--y==z++)?--y:z++; //注意这里,因为 三目运算符中 第一个为真,所以只执行第二个 printf("\n%d%d%d",xx,y,z); // 113 xx=(--y==z++)?--y:++z; printf("\n%d%d%d",xx,y,z); // 注意这里 三木运算符第一个为假,第二个还是为假,xx = ++z即等于5