W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
條件運(yùn)算符計(jì)算為兩個(gè)表達(dá)式之一,具體取決于邏輯表達(dá)式是否計(jì)算true或false。
因?yàn)樯婕叭齻€(gè)操作數(shù),所以此運(yùn)算符也稱為三元運(yùn)算符。
使用條件運(yùn)算符的表達(dá)式的一般表示形式如下所示:
condition ? expression1 : expression2
運(yùn)算符如何相對于操作數(shù)進(jìn)行排列。
?字符遵循邏輯表達(dá)式, 條件。
在右邊?是兩個(gè)表示選擇的操作數(shù), expression1 和 expression2。
如果condition的計(jì)算結(jié)果為 true, 則操作產(chǎn)生的值將是 expression1 的值; 如果condition計(jì)算為 false, 則為 expression2 的值。
請注意,只有一個(gè),表達(dá)式1或表達(dá)式2將被計(jì)算。
x = y > 7 ? 25 : 50;
如果y大于7,則該結(jié)果將x設(shè)置為25,否則為50。
這是一個(gè)很好的速記方式,產(chǎn)生與此相同的效果:
if(y > 7) x = 25; else x = 50;
例如,您可以編寫一個(gè)表達(dá)式,比較兩個(gè)薪水并獲得兩個(gè)薪水中的較大者,如下所示:
your_salary > my_salary ? your_salary : my_salary
下面是您如何處理該操作的方法:
#include <stdio.h>
int main(void)
{
const double PRICE = 3.50; // Unit price in dollars
const double rate1 = 0.05; // Discount for more than 10
double my_rate = 0.0;
int quantity = 0;
printf("Enter the number that you want to buy:");
scanf(" %d", &quantity);
my_rate = quantity > 10 ? rate1 : 0.6;
printf("The price for %d is $%.2f\n", quantity, my_rate);
return 0;
}
上面的代碼生成以下結(jié)果。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: