鄞州二院预约挂号时间:关于TC的问题

来源:百度文库 编辑:查人人中国名人网 时间:2024/04/29 00:40:17
#include "stdio.h"
main()
{
int x,y,z;
x=y=z=0;
++x||++y&&++z;
printf("x=%d\ty=%d\tz=%d\n",x,y,z);
}
其运行结果为什么是X=1,Y=0,Z=0.而不是

X=0.Y=1,Z=1.

++x||++y&&++z;

执行完++x后是||运算符,,这个是OR,前面的为真的话就不去执行后面的了(因为++X等于1,为真)所以Y和Z并没有被运算

或运算有1出1,当第一个为1的时候后面的不进行运算