首頁 後端開發 C#.Net教程 c語言三目運算子怎麼用?

c語言三目運算子怎麼用?

Jun 28, 2020 am 09:35 AM
c

c語言三目運算子的用法:首先對於條件式【b ? x : y】,計算條件b;然後判斷,如果b的值為true,計算x的值,運算結果為x的值,否則,計算y的值,運算結果為y的值即可。

c語言三目運算子怎麼用?

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,並傳回表達式2的結果;如果表達式1的值為假,則執行表達式3,並傳回表達式3的結果。

可以理解為條件 ? 結果1 : 結果2 裡面的?號碼是格式要求。也可以理解為是不是條件成立,條件成立為結果1否則為結果2。

c語言三目運算子怎麼用?

擴充資料:

三目運算符,又稱條件運算符,指的是電腦語言(c,c ,java等)的重要組成部分。它是唯一有3個操作數的運算符,所以有時又稱為三元運算符。一般來說,三目運算子的結合性是右結合的。

以下是關於條件運算子的幾點說明:

(1)、 通常情況下,表達式1是關係表達式或邏輯表達式,用於描述條件表達式中的條件,表達式2和表達式3可以是常數,變數或表達式。例如:

(x==y)?&#39;Y&#39;:&#39;N&#39;(d=b*b-4*a*c)>=0?sqrt(d):sqrt(-d)ch=(ch>=&#39;A&#39;&&ch<=&#39;Z&#39;)?(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語言三目運算子怎麼用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

C語言中的常數是什麼,可以舉例嗎? C語言中的常數是什麼,可以舉例嗎? Aug 28, 2023 pm 10:45 PM

常量也稱為變量,一旦定義,其值在程式執行期間​​就不會改變。因此,我們可以將變數宣告為引用固定值的常數。它也被稱為文字。必須使用Const關鍵字來定義常數。語法C程式語言中使用的常數語法如下-consttypeVariableName;(or)consttype*VariableName;不同類型的常數在C程式語言中使用的不同類型的常數如下所示:整數常數-例如:1,0,34, 4567浮點數常數-例如:0.0,156.89,23.456八進制和十六進制常數-例如:十六進制:0x2a,0xaa..八進制

VSCode和VS C++IntelliSense無法運作或拾取函式庫 VSCode和VS C++IntelliSense無法運作或拾取函式庫 Feb 29, 2024 pm 01:28 PM

VS程式碼和VisualStudioC++IntelliSense可能無法拾取函式庫,尤其是在處理大型專案時。當我們將滑鼠懸停在#Include&lt;wx/wx.h&gt;上時,我們看到了錯誤訊息「CannotOpen來源檔案'string.h'」(依賴於「wx/wx.h」),有時,自動完成功能無法回應。在這篇文章中,我們將看到如果VSCode和VSC++IntelliSense不能工作或不能提取庫,你可以做些什麼。為什麼我的智能感知不能在C++中運作?處理大型檔案時,IntelliSense有時

修復Xbox錯誤代碼8C230002 修復Xbox錯誤代碼8C230002 Feb 27, 2024 pm 03:55 PM

您是否因為錯誤代碼8C230002而無法在Xbox上購買或觀看內容?一些用戶在嘗試購買或在其控制台上觀看內容時不斷收到此錯誤。抱歉,Xbox服務出現問題。稍後再試。有關此問題的協助,請造訪www.xbox.com/errorhelp。狀態代碼:8C230002這種錯誤代碼通常是由於暫時的伺服器或網路問題引起的。但是,還有可能是由於帳戶的隱私設定或家長控制等其他原因,這些可能會阻止您購買或觀看特定內容。修正Xbox錯誤代碼8C230002如果您嘗試在Xbox控制台上觀看或購買內容時收到錯誤代碼8C

遞歸程式在C++中找到陣列的最小和最大元素 遞歸程式在C++中找到陣列的最小和最大元素 Aug 31, 2023 pm 07:37 PM

我們以整數數組Arr[]作為輸入。目標是使用遞歸方法在陣列中找到最大和最小的元素。由於我們使用遞歸,我們將遍歷整個數組,直到達到長度=1,然後返回A[0],這形成了基本情況。否則,將當前元素與當前最小或最大值進行比較,並透過遞歸更新其值以供後續元素使用。讓我們來看看這個的各種輸入輸出場景−輸入 −Arr={12,67,99,76,32};輸出 −數組中的最大值:99解釋 &mi

中國東方航空宣布C919客機即將投入實際運營 中國東方航空宣布C919客機即將投入實際運營 May 28, 2023 pm 11:43 PM

5月25日消息,中國東方航空在業績說明會上揭露了關於C919客機的最新進展。據公司表示,與中國商飛簽署的C919採購協議已於2021年3月正式生效,其中首架C919飛機已於2022年底交付。預計不久之後,該飛機將正式投入實際運作。東方航空將以上海為主要基地進行C919的商業運營,並計劃在2022年和2023年引進總共5架C919客機。該公司表示,未來的引進計畫將根據實際營運狀況和航線網路規劃來決定。據小編了解,C919是中國具有完全自主智慧財產權的全球新一代單通道幹線客機,符合國際通行的適航標準。該

C++程式列印數字的螺旋圖案 C++程式列印數字的螺旋圖案 Sep 05, 2023 pm 06:25 PM

以不同格式顯示數字是學習基本編碼問題之一。不同的編碼概念,如條件語句和迴圈語句。有不同的程式中,我們使用特殊字元(如星號)來列印三角形或正方形。在本文中,我們將以螺旋形式列印數字,就像C++中的正方形一樣。我們將行數n作為輸入,然後從左上角開始移向右側,然後向下,然後向左,然後向上,然後再次向右,以此類推等等。螺旋圖案與數字123456724252627282982340414243309223948494431102138474645321120373635343312191817161514

C語言中的void關鍵字的作用 C語言中的void關鍵字的作用 Feb 19, 2024 pm 11:33 PM

C中的void是一個特殊的關鍵字,用來表示空類型,也就是指沒有具體類型的資料。在C語言中,void通常用於以下三個方面。函數傳回類型為void在C語言中,函數可以有不同的回傳類型,例如int、float、char等。然而,如果函數不傳回任何值,則可以將傳回類型設為void。這意味著函數執行完畢後,並不傳回具體的數值。例如:voidhelloWorld()

23 年來首次,C# 獲得了 TIOBE 2023 年度程式語言獎 23 年來首次,C# 獲得了 TIOBE 2023 年度程式語言獎 Jan 11, 2024 pm 04:45 PM

根據TIOBE程式設計社群指數,該指數是衡量程式語言受歡迎程度的標準之一,透過收集來自全球工程師、課程、供應商和搜尋引擎的數據進行評估。 2024年1月TIOBE指數於近日發布,同時官方公佈了2023年程式語言排名,C#榮獲TIOBE2023年度程式語言,這是23年來C#首次拿下這項榮譽。 TIOBE官方新聞稿稱,C#已經穩居前10名長達20多年,如今它正在追趕四大語言,成為一年內漲幅最大的程式語言(+1.43%),當之無愧地獲得了該獎項。排名第二的是Scratch(+0.83%)和Fortran(+0

See all articles