zoukankan      html  css  js  c++  java
  • 三目运算符

    如果在条件语句中,只执行单个的赋值语句时, 常可使用条件表达式来实现。不但使程序简洁,也提高了运行效率。

    条件运算符为?和:,它是一个三目运算符,即有三个参与运算的量。由条件运算符组成条件表达式的一般形式为:

    表达式1? 表达式2:表达式3

    其求值规则: 如果表达式1成立,则用表达式2的值作为条件表达式的值否则用表达式3的值作为条件表达式的值

    例如:

    if( a>b ) max=a;

    else if( a<=b ) max=b;

    可用三目运算符表示: max = a>b? a:b;

    上述例子里表达式1 有2个常量(或变量)进行比较,也有只有一个常量(或变量)的表达形式, 如:

    max = (a? 4:1);           -------->  if( a!=0 ) max =4; else if( a==0 ) max = 1

    使用条件表达式时还要注意以下几点

    1.条件运算符优先级低于关系运算符和算术运算符,但高于赋值符。 如:max = (a>b?)4:1 可写成 max = a>b?4:1

    2. 三目运算符中的?和:是一对,不可分开使用

    3.运算符的结合方向是自右向左

    a>b?a:c>d?c:d 可理解成 a>b?a:(c>d?c:d) 

  • 相关阅读:
    WHU 1572 Cyy and Fzz (AC自动机 dp )
    Codeforces 441D Valera and Swaps(置换群)
    Codeforces 527E Data Center Drama(欧拉回路)
    差分约束小结
    Codeforces 193D Two Segments 解题报告
    SGU 231.Prime Sum
    SGU 249.Matrix(Gray码)
    SGU 222.Little Rooks
    SGU 207.Robbers
    risc-v的寻址模式
  • 原文地址:https://www.cnblogs.com/ATMvip/p/3117909.html
Copyright © 2011-2022 走看看