1. 程式人生 > >C語言求三個數的中間值(三目運算子)

C語言求三個數的中間值(三目運算子)

第一種方法:用三個數的和減去最大數和最小數

// 獲得三個數中的中間數
int getSecond(int a,int b,int c){
    int max = a > b ? a : b;
    max = max > c ? max : c;
    int min = a < b ? a: b;
    min = min < c ? min : c;
    int second = a + b + c - max - min;
    return second;
}
第二種方法:使用複雜的三目運算子

int getSecond(int a,int b,int c){
    return a > b ? (b > c ? b : ( a > c ? c : a)) : ( a > c ? a: (b > c ? c : a));
}
// 最大值
<pre name="code" class="objc">    NSInteger max = a > b ? (a > c ? a : c) : (b > c ? b : c);
// 最小值    
    NSInteger min = a > b ? (b > c ? c : b) : (a > c ? c : a);