選擇結(jié)構(gòu)是程序設(shè)計(jì)中三種基本結(jié)構(gòu)之一,大多數(shù)程序在設(shè)計(jì)過程中都會(huì)用到選擇結(jié)構(gòu)的程序設(shè)計(jì)思想。C語(yǔ)言提供了多種選擇語(yǔ)句,對(duì)于初學(xué)編程的同學(xué)如何來(lái)選擇使用呢?下面我們來(lái)介紹一下C語(yǔ)言中的選擇語(yǔ)句。
⑴ if語(yǔ)句,其語(yǔ)法格式如下:
if(表達(dá)式)
語(yǔ)句
if語(yǔ)句的執(zhí)行過程是,當(dāng)表達(dá)式的值為真(非0)時(shí),執(zhí)行語(yǔ)句,否則直接執(zhí)行if語(yǔ)句下面的語(yǔ)句。
⑵ if-else語(yǔ)句,其語(yǔ)法格式如下:
if(表達(dá)式)
語(yǔ)句1
else
語(yǔ)句2
if-else語(yǔ)句的執(zhí)行過程是,當(dāng)表達(dá)式為真(非0)時(shí),執(zhí)行語(yǔ)句1,否則執(zhí)行語(yǔ)句2。
、 if-else-if語(yǔ)句,其語(yǔ)法格式如下:
if(表達(dá)式1) 語(yǔ)句1
else if(表達(dá)式2) 語(yǔ)句2
else if(表達(dá)式3) 語(yǔ)句3
…
else if(表達(dá)式n) 語(yǔ)句n
else 語(yǔ)句n+1
if-else-if語(yǔ)句執(zhí)行過程是,依次判斷表達(dá)式的值,當(dāng)出現(xiàn)某個(gè)值為真時(shí),則執(zhí)行其對(duì)應(yīng)的語(yǔ)句,然后跳到整個(gè)if語(yǔ)句之外繼續(xù)執(zhí)行程序。如果所有的表達(dá)式都為假,則執(zhí)行最后一個(gè)else后的語(yǔ)句,然后繼續(xù)執(zhí)行后續(xù)程序。
、 switch語(yǔ)句,其語(yǔ)法格式如下:
switch(表達(dá)式)
{
case 常量表達(dá)式1:[語(yǔ)句1]
case 常量表達(dá)式2:[語(yǔ)句2]
…
case 常量表達(dá)式n:[語(yǔ)句n]
[default:語(yǔ)句n+1]
}
switch語(yǔ)句的執(zhí)行過程是,首先計(jì)算switch后表達(dá)式的值,然后將其結(jié)果與case后常量表達(dá)式的值依次進(jìn)行比較,若此值與某case后常量表達(dá)式的值一致,即轉(zhuǎn)去執(zhí)行該case后的語(yǔ)句;若沒有找到與之匹配的常量表達(dá)式,則執(zhí)行default后的語(yǔ)句。
在解決問題時(shí)根據(jù)條件判定的情況選擇合適的語(yǔ)句,問題中若只有在條件為真的情況才執(zhí)行操作即單分支的問題可以選擇用if語(yǔ)句編程實(shí)現(xiàn),若根據(jù)條件得到兩種不同的情況即雙分支的問題可以選擇使用if-else語(yǔ)句,若題中的條件有多種情況,需要從多個(gè)條件中選擇執(zhí)行即多分支的問題可以使用if-else-if語(yǔ)句或switch語(yǔ)句編程實(shí)現(xiàn)。
對(duì)于有選擇有轉(zhuǎn)移的編程問題,希望通過以上的分析能對(duì)同學(xué)們提供一些幫助。 |