在編寫程序時,我們經常需要根據某些條件執行不同的代碼,這時就需要使用選擇結構。在C語言中,有if語句、switch語句等多種選擇結構可供使用。其中,switch語句是一種非常強大的選擇結構,它可以根據具體的值來選擇不同的執行路徑。本文將詳細介紹switch語句的使用方法,希望能對大家有所幫助。
一、基本語法及用法
1、基本語法
switch(expression){ case constant1: statement1; break; case constant2: statement2; break; ... default: statement_default; }
switch語句由switch關鍵字、表達式、花括弧、case標籤、語句以及default標籤組成。其中:
- expression:表示要進行判斷的表達式,必須為整型或字元型
- case constant:表示匹配值,可以是整型或字元型常量
- statement:表示要執行的語句,可以是一條或多條
- break:表示跳出switch語句,可選
- default:表示默認情況,可選
2、使用方法
switch語句的使用方法非常靈活,可以根據不同的場景採取不同的形式。下面是一些常見的使用方法:
1)判斷具體值
我們可以根據表達式的值來進行判斷,然後執行對應的語句。例如:
int i = 1; switch(i){ case 1: printf("i = 1\n"); break; case 2: printf("i = 2\n"); break; default: printf("i != 1 and i != 2\n"); break; }
上述代碼中,表達式i的值為1,因此會執行第一個case標籤下的語句,輸出「i = 1」。
2)使用連續的標籤
我們可以使用連續的case標籤,表示這些值都會執行同樣的語句。例如:
int i = 1; switch(i){ case 1: case 2: case 3: printf("i is between 1 and 3\n"); break; default: printf("i is not between 1 and 3\n"); break; }
上述代碼中,表達式i的值為1,2,3中的任意一個,因此會執行第一個case標籤下的語句,輸出「i is between 1 and 3」。
3)省略break
我們可以省略case標籤後面的break語句,這樣會執行下一個case標籤下的語句。例如:
int i = 1; switch(i){ case 1: printf("i = 1\n"); case 2: printf("i is bigger than 2\n"); default: printf("default\n"); break; }
上述代碼中,表達式i的值為1,因此會執行第一個case標籤下的語句,輸出「i = 1」和「i is bigger than 2」,然後繼續執行下一個case標籤下的語句,輸出「default」。注意,為了避免出現意外情況,我們在最後一條語句使用了break語句。
二、代碼示例
下面是一個完整的代碼示例:
#include int main(){ int i; printf("請輸入1或2或3:"); scanf("%d",&i); switch(i){ case 1: printf("你選擇了1\n"); break; case 2: printf("你選擇了2\n"); break; case 3: printf("你選擇了3\n"); break; default: printf("你沒有選擇1或2或3\n"); break; } return 0; }
該程序中,我們使用scanf函數來獲取用戶輸入,然後使用switch語句來根據用戶輸入執行不同的語句。當用戶輸入1、2、3時,程序會分別輸出「你選擇了1」、「你選擇了2」、「你選擇了3」,否則輸出「你沒有選擇1或2或3」。
三、小結
本文詳細介紹了C語言中switch語句的使用,包括基本語法及用法、使用方法和代碼示例。使用switch語句可以使程序結構更清晰、代碼更簡潔,適用於各種不同的場景。我們在編寫程序時,需要根據具體情況選擇最合適的選擇結構,以便更好地完成我們的任務。
原創文章,作者:SXIGW,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/373150.html