关于关系运算符和逻辑运算符的问题
i=3,j=4,k=5;
printf("%d",i<j||++j<k);
printf("%d %d %d",i,j,k);
为什么y=1啊?还有这个运算顺序是怎么样的,++j运算顺序不是最高的吗?不是先让y自增吗?
支离益
浏览 1258回答 3
3回答
-
望远
#include<stdio.h>void main(){ int i=3,j=4,k=5; printf("%d\n",i<j||++j<k); printf("i=%d j=%d k=%d\n",i,j,k);}运行结果:没有出现楼主的问题啊。。
-
JustWannaHugU
y再哪里?我怎么没看到。。如果你是想问i=3,j=4,k=5; printf("%d",i<j||++j<k);为什么输出1的话那是因为||是或运算符,运算符两侧只要有一个为真输出就是1,由于4>3.因此i < j || ++j < k ;的结果是1
-
大咪
j怎么看都等于5啊……
打开App,查看更多内容