C 語(yǔ)言條件運(yùn)算符詳細(xì)講解
如果希望獲得兩個(gè)數(shù)中最大的一個(gè),可以使用 if 語(yǔ)句,例如:
if(a>b){ max = a; }else{ max = b; }
不過(guò),C語(yǔ)言提供了一種更加簡(jiǎn)單的方法,叫做條件運(yùn)算符,語(yǔ)法格式為:
表達(dá)式1 ? 表達(dá)式2 : 表達(dá)式3
條件運(yùn)算符是C語(yǔ)言中唯一的一個(gè)三目運(yùn)算符,其求值規(guī)則為:如果表達(dá)式1的值為真,則以表達(dá)式2 的值作為整個(gè)條件表達(dá)式的值,否則以表達(dá)式3的值作為整個(gè)條件表達(dá)式的值。條件表達(dá)式通常用于賦值語(yǔ)句之中。
上面的 if else 語(yǔ)句等價(jià)于:
max = (a>b) ? a : b;
該語(yǔ)句的語(yǔ)義是:如a>b為真,則把a(bǔ)賦予max,否則把b 賦予max。讀者可以認(rèn)為條件運(yùn)算符是一種簡(jiǎn)寫的 if else,完全可以用 if else 來(lái)替換。
使用條件表達(dá)式時(shí),還應(yīng)注意以下幾點(diǎn):
1) 條件運(yùn)算符的優(yōu)先級(jí)低于關(guān)系運(yùn)算符和算術(shù)運(yùn)算符,但高于賦值符。因此
max=(a>b) ? a : b;
可以去掉括號(hào)而寫為
max=a>b ? a : b;
2) 條件運(yùn)算符?和:是一對(duì)運(yùn)算符,不能分開單獨(dú)使用。
3) 條件運(yùn)算符的結(jié)合方向是自右至左。例如:
a>b ? a : c>d ? c : d;
應(yīng)理解為:
a>b ? a : ( c>d ? c : d );
這也就是條件表達(dá)式嵌套的情形,即其中的表達(dá)式又是一個(gè)條件表達(dá)式。
用條件表達(dá)式重新編程,輸出兩個(gè)數(shù)中的最大值:
#include <stdio.h> int main(){ int a, b; printf("Input two numbers:"); scanf("%d %d", &a, &b); printf("max=%d\n", a>b?a:b); return 0; }
運(yùn)行結(jié)果:
Input two numbers:23 45
max=45
以上就是對(duì)C語(yǔ)言的條件運(yùn)算符知識(shí)的講解,有需要的朋友可以參考下。
相關(guān)文章
使用C++17實(shí)現(xiàn)JSON庫(kù)設(shè)計(jì)思路示例全解
這篇文章主要為大家介紹了使用C++17實(shí)現(xiàn)JSON庫(kù)設(shè)計(jì)思路示例全解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08詳解C語(yǔ)言中動(dòng)態(tài)內(nèi)存管理及柔性數(shù)組的使用
這篇文章主要為大家詳細(xì)介紹一下C語(yǔ)言中動(dòng)態(tài)內(nèi)存管理以及柔性數(shù)組的使用方法,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C語(yǔ)言有一定的幫助,需要的可以參考一下2022-07-07C語(yǔ)言 數(shù)組中重復(fù)的數(shù)字分析及方法
這篇文章主要介紹了C語(yǔ)言 數(shù)組中重復(fù)的數(shù)字分析及方法的相關(guān)資料,需要的朋友可以參考下2017-03-03C++內(nèi)存管理之簡(jiǎn)易內(nèi)存池的實(shí)現(xiàn)
大家好,本篇文章主要講的是C++內(nèi)存管理之簡(jiǎn)易內(nèi)存池的實(shí)現(xiàn),感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2021-12-12VS?Code+msys2配置Windows系統(tǒng)下C/C++開發(fā)環(huán)境
我們?cè)趙indows10中使用VS Code做C++程序開發(fā)過(guò)程中,需要安裝MSYS2和MinGW,下面這篇文章主要給大家介紹了關(guān)于VS?Code+msys2配置Windows系統(tǒng)下C/C++開發(fā)環(huán)境的相關(guān)資料,需要的朋友可以參考下2022-12-12C語(yǔ)言求字符串長(zhǎng)度的四種方法實(shí)例代碼
在C語(yǔ)言的應(yīng)用過(guò)程中經(jīng)常性的會(huì)用到字符串,以及對(duì)字符串的長(zhǎng)度進(jìn)行計(jì)算的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于C語(yǔ)言求字符串長(zhǎng)度的四種方法的相關(guān)資料,需要的朋友可以參考下2022-12-12