C語言圖文并茂講解分支語句用法
一、if 語句分析
- if 語句用于根據(jù)條件選擇執(zhí)行語句
- else 不能獨立存在且總是與它最近的 if 相匹配
- else 語句后可以接連其他 if 語句
if 語句中零值比較的注意點
- bool 型變量應(yīng)該直接出現(xiàn)于條件中,不要進行比較
- 變量和 0 值比較時,0 值應(yīng)該出現(xiàn)在比較符號左邊(這條規(guī)則可以拓展為任意字面量與變量比較時,字面量應(yīng)該放在左邊,變量放在右邊,這樣即使手誤寫成了 = ,編譯器也能發(fā)現(xiàn))
- float 型變量不能直接進行 0 值比較,需要定義精度
二、switch 語句分析
- switch 語句對應(yīng)單個條件多個分值的情形
- case 語句分支必須要有 break ,否則會導(dǎo)致分支重疊
- default 語句有必要加上,以處理特殊情況
case 語句中的值只能是整型或字符型
case 語句的排列順序
- 按字母或數(shù)字順序排列各條語句
- 正常情況放在前面,異常情況放在后面
- default 語句只用于處理真正的默認情況
下面看一段 if 和 switch 使用示例:
#include <stdio.h> void f1(int i) { if( i < 6 ) { printf("Failed!\n"); } else if( (6 <= i) && (i <= 8) ) { printf("Good!\n"); } else { printf("Perfect!\n"); } } void f2(char i) { switch(i) { case 'c': printf("Compile\n"); break; case 'd': printf("Debug\n"); break; case 'o': printf("Object\n"); break; case 'r': printf("Run\n"); break; default: printf("Unknown\n"); break; } } int main() { f1(5); f1(9); f1(7); f2('o'); f2('d'); f2('e'); return 0; }
下面為輸出結(jié)果:
下面反過來,調(diào)換 if 和 switch,實現(xiàn)相同功能:
#include <stdio.h> void f1(int i) { switch( i < 6 ) { case 1: printf("Failed!\n"); break; default: switch( (6 <= i) && (i <= 8) ) { case 1: printf("Good!\n"); break; default: printf("Perfect!\n"); break; } break; } } void f2(char i) { if( 'c' == i ) { printf("Compile\n"); } else if( 'd' == i ) { printf("Debug\n"); } else if( 'o' == i ) { printf("Object\n"); } else if( 'r' == i ) { printf("Run\n"); } else { printf("Unknown\n"); } } int main() { f1(5); f1(9); f1(7); f2('o'); f2('d'); f2('e'); return 0; }
下面為輸出結(jié)果,和上面一模一樣:
三、小結(jié)
- if 語句適用于復(fù)雜邏輯進行判斷的情形中
- switch 語句適用于對離散值進行判斷的情形中
- if 語句和 switch 語句在功能上可以相互替換
- if 語句對于"按片"分支判斷的情形更加簡潔
- switch 語句對于多分支判斷的情形更加簡潔
到此這篇關(guān)于C語言圖文并茂講解分支語句用法的文章就介紹到這了,更多相關(guān)C語言 分支語句內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Visual Studio2022+QT6創(chuàng)建桌面應(yīng)用實現(xiàn)
本文主要介紹了Visual Studio2022+QT6創(chuàng)建桌面應(yīng)用實現(xiàn),文中通過圖文介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-02-02使用VS2022開發(fā)在線遠程編譯部署的C++程序(圖文詳解)
這篇文章主要介紹了使用VS2022開發(fā)可以在線遠程編譯部署的C++程序,本文分步驟通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-12-12QT使用QComBox和QLineEdit實現(xiàn)模糊查詢功能
模糊查詢是指根據(jù)用戶輸入的文本,在下拉框的選項中進行模糊匹配,并動態(tài)地顯示匹配的選項,本文將使用QComBox和QLineEdit實現(xiàn)模糊查詢功能,需要的可以參考下2023-11-11Linux系統(tǒng)下C語言gets函數(shù)出現(xiàn)警告問題的解決方法
這篇文章主要給大家介紹了關(guān)于在Linux系統(tǒng)下C語言gets函數(shù)出現(xiàn)警告問題的解決方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12