假设已定义了变量a=1;b=2;c=3;d=4;m=1;n=1;则语句(m=a>b)&&(n=c>d);执行后m=0,n=1是否正确?

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/06 00:12:27
假设已定义了变量a=1;b=2;c=3;d=4;m=1;n=1;则语句(m=a>b)&&(n=c>d);执行后m=0,n=1是否正确?
xQnPWD.[i@k`D\Mӆ>bTT*]b=gΙ3rMF/"X`1ݴU"EL FRװ@rkUII)!RI̘r J "BAYŴ5EflRD6mq8"~ +y>rgƣB+U1\֜O``v ֑PDPS7S:zܫ]E,cb"Qܬ 8"34O=S&?XkNlB=r4r؋[c*ZISvW!9

假设已定义了变量a=1;b=2;c=3;d=4;m=1;n=1;则语句(m=a>b)&&(n=c>d);执行后m=0,n=1是否正确?
假设已定义了变量a=1;b=2;c=3;d=4;m=1;n=1;则语句(m=a>b)&&(n=c>d);执行后m=0,n=1是否正确?

假设已定义了变量a=1;b=2;c=3;d=4;m=1;n=1;则语句(m=a>b)&&(n=c>d);执行后m=0,n=1是否正确?
楼上的错了,>优先级比=高,楼主的答案是正确的
&&连接而成的表达式执行的短路求值,只要前半部分表达式的值为0,后半部分就不求值了
m = a>b,a>b为假,比较表达式的值为0,0付给m,所以(m=a>b)整个复制表达式的值为0,&&的后半部分(n=c>d)不求值了,所以n的值没有变还是1