本章知識點要求
1. 用if語句實現選擇結構
2. 用switch語句實現多分支選擇結構
3. 選擇結構的巢狀
4.c語言支援兩種條件語句:if和switch.此外,條件運算子(?:)在某些情況下可以替換if.
引言: c語言選擇結構程式設計結構的執行過程是通過條件判斷來決定程式的下一步;那麼,它主要是通過條件表示式和邏輯表示式的值來決定程式的下一步操作;
4.1 if語句
1.不含else子句的if語句
語句格式: if(表示式) 語句;
例如: if(x>y)printf(「%d」,x);
if(x>z)
執行過程是: 先計算出表示式的值,如果表示式的值為真(非0值),則執行其後的if子語句,執行後再去執行if語句後面的下一條語句;如果表示式的值為假(0值),則不執行if子語句,直接執行if語句後面的下一條語句.
例如: 輸入兩個實數,輸出其中的最大數.
#include
main()
2.含else的if語句
語句格式: if(表示式) 語句1;
else 語句2;
執行過程是: 先計算出表示式的值,如果表示式的值是真,則執行語句1,執行後再去執行if語句後面的下一條語句;如果表示式的值是假,則跳過語句1而直接執行語句2.
例如: if(x>y)
printf(「%d」,x);
else
printf(「%d」,y);
功能是: 如果x>y則輸出x,否則輸出y.
4.2 if語句的巢狀
1). 在if語句中巢狀具有else子句的if語句
語句格式:
if(表示式1)
if(表示式)語句1;
else 語句2;
else
語句3;
2) 在if語句中巢狀不含else子句的if語句
格式:if(表示式1)
else
語句2;
3) 在else子句中巢狀if子句
格式: if(表示式1) 語句1;
else
if(表示式2) 語句2;
else 語句3;
if語句的配對問題
c語言規定,else 總是與它前面最近的未配對的if語句配對。
例如: 比較兩個數的大小關係
void main()
4.3 條件運算子和條件表示式
如果在條件語句中,只執行單個的賦值語句時, 常可使用條件表示式來實現。不但使程式簡潔,也提高了執行效率。
條件運算子為 ?:,它是乙個三目運算子,即有三個參與運算的量。
由條件運算子組成條件表示式的一般形式為:
表示式1? 表示式2:表示式3
其求值規則為:如果表示式1的值為真,則以表示式2 的值作為條件表示式的值,否則以表示式2的值作為整個條件表示式的值。
1) 條件運算子可巢狀
例如:a>b?a:c>d?c:d 應理解為 a>b?a:(c>d?c:d)
2) expr1、expr2、expr3型別可不同,表示式值取較高的型別
例 x?『a』:『b』 //x=0,表示式值為『b』; x0,表示式值為『a』
x>y?1:1.5 //x>y ,值為1.0; x4.4 switch語句和break語句
1. switch語句
c語言還提供了一種用語多分支選擇結構的switch語句
格式:switch(表示式)
執行過程是:
計算表示式的值,並逐個與後面的常量表示式的值比較,當表示式的值與整個常量表示式的值相等時,則執行它後面的語句,然後不再進行判斷,繼續執行後面所有case後的語句.如果表示式的值與所有的常量表示式的值都不相等時,則執行default後的語句. (注意語句後有break語句和沒有break語句區別),沒有break語句,語句會順序執行下去。
在使用switch語句時還應注意以下幾點:
1) 在case後的各常量表示式的值不能相同,否則會出現錯誤。
2) 在case後,允許有多個語句,可以不用{}括起來。
3) 各case和default子句的先後順序可以變動,而不會影響程式執行結果。
4) default子句可以省略不用。
2. break語句
該語句只能用在switch語句或迴圈語句中,作用是跳出switch語句或跳出本層迴圈,轉去執行後面的程式.
例如:計算器程式。使用者輸入運算數和四則運算符,輸出計算結果。
main()
}本例可用於四則運算求值。switch語句用於判斷運算子,然後輸出運算值。當輸入運算子不是+,-,*,/時給出錯誤提示。
C語言選擇結構程式設計
3.3 實驗選擇結構程式設計 一 實驗目的 1.掌握關係運算子與表示式的使用。2.掌握邏輯運算子與邏輯表示式的使用。3.理解並掌握if語句和switch語句及它們的巢狀使用。4.掌握選擇結構程式設計中一些常用演算法。二 實驗內容 1.輸入乙個正整數,判斷它是奇數還是偶數,並輸出判斷結果。includ...
C語言第4章選擇結構程式設計
4.1 什麼是算術運算?什麼是關係運算?什麼是邏輯運算?答 略4.2 c語言中如何表示 真 和 假 系統如何判斷乙個量的 真 和 假 答 在c語言中,用1和0表示真和假的值 判斷乙個邏輯表示式的值時,非0代表真,0代表假。比如3 4為真,因為3是非0,4也是非0,真與真,結果還是真,而3 4的值為1...
C語言選擇結構
實驗目的 1 掌握邏輯運算和邏輯表示式的用法。2 掌握選擇結構的程式設計方法。3 掌握if語句和switch語句。4 了解c語言表示邏輯量的方法,以0代表 假 以非0代表 真 實驗步驟 1 啟動vc 整合環境。2 在編輯狀態下輸入源程式,儲存後生成擴充套件名為cpp的原始檔。3 對原始檔進行編譯,生...