关于关系运算符和逻辑运算符的问题

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,查看更多内容
随时随地看视频慕课网APP