三目運算符,又稱條件運算符,是計算機語言(c,c++,java等)的重要組成部分。它是唯一有3個操作數的運算符,有時又稱為三元運算符。一般來說,三目運算符的結合性是右結合的。
C語言三目運算符用法:
對于條件表達式b ? x : y
,先計算條件b,然后進行判斷。如果b的值為true,計算x的值,運算結果為x的值;否則,計算y的值,運算結果為y的值。
一個條件表達式絕不會既計算x,又計算y。條件運算符是右結合的,也就是說,從右向左分組計算。例如,a ? b : c ? d : e
將按a ? b : (c ? d : e)
執行。
<表達式1> ? <表達式2> : <表達式3>; "?"運算符的含義是:先求表達式1的值,如果為真,則執行表達式2,并返回表達式2的結果;如果表達式1的值為假,則執行表達式3,并返回表達式3的結果。
可以理解為條件 ? 結果1 : 結果2 里面的?號是格式要求。也可以理解為是不是條件成立,條件成立為結果1否則為結果2。
擴展資料:
三目運算符,又稱條件運算符,指的是計算機語言(c,c++,java等)的重要組成部分。它是唯一有3個操作數的運算符,所以有時又稱為三元運算符。一般來說,三目運算符的結合性是右結合的。
以下是關于條件運算符的幾點說明:
(1)、 通常情況下,表達式1是關系表達式或邏輯表達式,用于描述條件表達式中的條件,表達式2和表達式3可以是常量,變量或表達式。例如:
(x==y)?'Y':'N'(d=b*b-4*a*c)>=0?sqrt(d):sqrt(-d)ch=(ch>='A'&&ch<='Z')?(ch+32):ch
以上均為合法的條件表達式。
(2)、 條件表達式的執行順序為:先求解表達式1,若值為非0,表示條件為真,則求解表達式2,此時表達式2的值就作為整個條件表達式的值;
若表達式1的值為0,表示條件為假,則求解表達式3,表達式3的值就是整個條件表達式的值。例如:
(a>=0)?a:-a
執行結果是a的絕對值。
(3) 、在程序中,通過把條件表達式的值直接賦予某個變量。例如:
min=(a<b)?a:b
執行結果就是將條件表達式的值賦予變量min,即將a和b二者中較小的數賦給min。
(4)、 條件表達式的優先級別僅高于賦值運算符,而低于前面遇到過的所有運算符。
因此,min=(a<b)?a:b
括號可以不要,可直接寫成,min=a<b?a:b
如果有x<y?x+1:y-1
等效于x<y(x+1):(y-1)
而不等效于(x<y?x+1:y)-1
(5) 、條件運算符的結合方向為"自右至左".
(6) 、條件表達式允許嵌套,即允許條件表達式中的表達式2和表達式3又是一個條件表達式。例如:
x>0?1:x<0?-1:0
上述條件表達式中,表達式3部分又是一個條件表達式.根據條件表達式的結合性,上述條件表達式等價于:
x>0?1:(x<0?-1:0)
其作用是判斷x的符號情況.當x為正數時,該條件表達式的值為1;當x為負數時,該條件表達式的值為-1;當x為0時,該條件表達式的值為0。
(7) 、條件表達式不能取代一般的if語句,僅當if語句中內嵌的語句為賦值語句(且兩個分支都給同一變量賦值)時才能代替if語句。例如:
if(a%2==0)printf("even/n");elseprintf("odd/n");
該語句的作用是:若 a 為偶數,輸出 even;若 a 為奇數,輸出odd。
(8) 、表達式1,表達式2,表達式3的類型可以不同.此時條件表達式的值的類型為它們中較高的類型。
關于c語言中三目運算符的使用方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
本文由 貴州做網站公司 整理發布,部分圖文來源于互聯網,如有侵權,請聯系我們刪除,謝謝!
c語言中正確的字符常量是用一對單引號將一個字符括起表示合法的字符常量。例如‘a’。數值包括整型、浮點型。整型可用十進制,八進制,十六進制。八進制前面要加0,后面...
2022年天津專場考試原定于3月19日舉行,受疫情影響確定延期,但目前延期后的考試時間推遲。 符合報名條件的考生,須在規定時間登錄招考資訊網(www.zha...
:喜歡聽,樂意看。指很受歡迎?!巴卣官Y料”喜聞樂見:[ xǐ wén lè jiàn ]詳細解釋1. 【解釋】:喜歡聽,樂意看。指很受歡迎。2. 【示例】:這是...
股指配資是什么意思?股指配資是期貨市場中的一種金融合作形式,投資者和交易方委托財務管理。在合作之前,投資方和交易方需要簽署相關協議,如“?賬戶委托經營協議?“或”基金合作經營協議?“?確保雙方的權利和義務?簽署協議的最終目標是確保公平合理的資金合作。說白了一句話,就是給資金加大杠桿,比如1萬的資金可以操盤5萬的賬戶。獲得的利潤也是5萬資金所產生的。股...
紙黃金是一種記賬式黃金,它與現貨黃金(倫敦金)價格掛鉤,采取24小時不間斷交易模式,其走勢基本上與現貨黃金走勢一樣,投者資可以在建行的手機銀行,或者去銀行柜臺購買。紙黃金存在以下交易規則:1、單向交易,即投資者只能做多。2、無杠桿,投入本金較多,根據不同品種在銀行柜臺開戶,市場上每克黃金價格是多少,需要買多少克就需要多少資金,比如:買100克黃金,在市場上每克黃金300元人民幣,則需要30000元...
渣打銀行網申如何提高申請成功率?1.了解渣打銀行的申請條件和流程渣打銀行有嚴格的申請條件,包括年齡、收入證明、信用記錄等。用戶在申請前要先了解自己是否符合銀行的條件。申請時還需填寫詳細的個人資料,如姓名、身份證號碼、職業、聯系方式等,填寫時要確保正確無誤。此外,用戶還需要提供相應的證明文件,如收入證明、居住證明等。申請流程也需要注意,不同的業務流程可能存在差異。2.保持良好的信用記錄在申請渣打銀行...