永发信息网

c语言中,条件运算符是怎样的法则?

答案:4  悬赏:40  手机版
解决时间 2021-01-25 06:05
  • 提问者网友:我们很暧昧
  • 2021-01-24 15:16
c语言中,条件运算符是怎样的法则?
最佳答案
  • 五星知识达人网友:大漠
  • 2021-01-24 16:45
c语言中,条件运算符的法则:
  由高到低是:!(非),&&(与),||(或)
  &&左边为0则不看右边运算,||左边为1不看右边!
  例:
  main()
  {
  int a=1,b=2,c=3,d;
  d=!b>a&&c||c>2
  printf("a=%d\n b=%d\n c=%d\n d=%d\n",a,b,c,d);
  }
  运行结果:a=1
  b=0
  c=3
  d=1
  程序执行说明:先执行!b>a即0>a,结果为0(b=0)
  再执行0&&c结果为0,执行c>2结果为1
  0||1结果为1
  因为执行顺序为右结合,所以将整个表达式的结果给 d为1
  }
  
  条件运算符:
  (表达式1)?(表达式2):(表达式3)
  运算规划:如果表达式1为真,返回表达式2的结果,否则返回表达式3的结果
  例如:
  A=1,B=2
  (A>B)?A:B
  返回值为2
  注意表达式是右结合的.
  例:
  A=1,B=2,C=3
  (A>B)?A:B?C:B
  相当于(A>B)?A:(B?C:B)
  返回值为3
全部回答
  • 1楼网友:玩世
  • 2021-01-24 20:13
我记得好像有一个是? :,例a>b?1:0.意思就是a>b吗?如果是那么这个表达示的结果是1,否刚就是0.a>b是一个条件,那么这个表达示只要是一个非0值就会取:之前的值,否则就取:之后
  • 2楼网友:玩家
  • 2021-01-24 18:34
not and or 高到低
  • 3楼网友:詩光轨車
  • 2021-01-24 18:04
c语言中,条件运算符的法则:
由高到低是:!(非),&&(与),||(或)
&&左边为0则不看右边运算,||左边为1不看右边!
例:
main()
{
int a=1,b=2,c=3,d;
d=!b>a&&c||c>2
printf("a=%d\n b=%d\n c=%d\n d=%d\n",a,b,c,d);
}
运行结果:a=1
b=0
c=3
d=1
程序执行说明:先执行!b>a即0>a,结果为0(b=0)
再执行0&&c结果为0,执行c>2结果为1
0||1结果为1
因为执行顺序为右结合,所以将整个表达式的结果给 d为1
}
条件运算符:
(表达式1)?(表达式2):(表达式3)
运算规划:如果表达式1为真,返回表达式2的结果,否则返回表达式3的结果
例如:
A=1,B=2
(A>B)?A:B
返回值为2
注意表达式是右结合的.
例:
A=1,B=2,C=3
(A>B)?A:B?C:B
相当于(A>B)?A:(B?C:B)
返回值为3
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯