最新switch用法語句大全
以下是聘才小編爲你們搜索整理的最新switch用法語句大全,歡迎大家來閱讀
使用switch語句直接處理多個分支(當然包括兩個分支).其一般形式爲:
switch(表達式)
{
case 常量表達式1:
語句1;
break;
case 常量表達式2:
語句2;
break;
……
case 常量表達式n:
語句n;
break;
default:
語句n+1;
break;
}
注意:
switch和case 後面只能是整型或字符型的常量或常量表達式,不能是實型。
因爲實型數據在內存中儲存的時候會有一定的誤差,如果比較將兩個實型數據相比較,基本不會出現==的情況,一般要比較兩個實型數據是否相等,會採用兩者之差小於一個很小的數(比如10^-6),所以SWITCH裏面不要用實型數據,一般只能用整型數據(當然也包括char)。
(1) switch語句的執行流程是:首先計算switch後面圓括號中表達式的值,然後用此值依次與各個case的常量表達式比較,若圓括號中表達式的值與某個case後面的常量表達式的值相等,就執行此case後面的語句,執行後遇break語句就退出switch語句;若圓括號中表達式的值與所有case後面的常量表達式都不等,則執行default後面的語句n+1,然後退出switch語句,程序流程
轉向開關語句的下一個語句.如下程序,可以根據輸入的考試成績的等級,輸出百分制分數段:
switch(grade)
{
case 'A': //注意,這裏是冒號:並不是分號;
printf("85-100");
break; //每一個case語句後都要跟一個break用來退出switch語句
case 'B': //每一個case後的常量表達式必須是不同的值以保證分支的唯//一性
printf("70-84");
break;
case 'C':
printf("60-69");
break;
case 'D':
printf("<60");
break;
default:
printf("error!");
}
(2) 如果在case後面包含多條執行語句時,也不需要像if語句那樣加大括號,進入某個case後,會自動順序執行本case後面的所有執行語句.如:
{
case 'A':
if(grade<=100)
printf("85-100");
else
printf("error");
break;
……
(3) default後不需要break語句(僅適用於default在最後).並且,default部分也不是必須的`,如果沒有這一部分,當switch後面圓括號中表達式的值與所有case後面的常量表達式的值都不相等時,則不執行任何一個分支直接退出switch語句.此時,switch語句相當於一個空語句.例如,將上面例子中switch語句中的default部分去掉,則當輸入的字符不是"A","B","C"或"D"時,此
switch語句中的任何一條語句也不被執行.
(4) 在switch-case語句中,多個case可以共用一條執行語句.如:
……
case 'A':
case 'B':
case 'c':
printf(">60");
break;
……
在A,B,C3種情況下,均執行相同的語句,即輸出">60"(只輸出一次).
(5) 最開始那個例子中,如果把每個case後的break刪除掉,則當greak='A'時,程序從printf("85-100")開始執行,輸出結果爲:
85-100
70-84
60-69
<60
error
這是因爲case後面的常量表達式實際上只起語句標號作用,而不起條件判斷作用,即"只是開始執行處的入口標號".因此,一旦與switch後面圓括號中表達式的值匹配,就從此標號處開始執行,而且執行完一個case後面的語句後,若沒遇到break語句,就自動進入下一個case繼續執行,而不在判斷是否與之匹配,直到遇到break語句才停止執行,退出break語句.因此,若想執行一
個case分支之後立即跳出switch語句,就必須在此分支的最後添加一個break語句.
引用
--------------------------------------------------------------------------------
int main()
{
float a,b;
char c1;
printf("Please enter a,b and op:");
scanf("%f%c%f",&a,&c1,&b);
switch(c1)
{
case '+':
printf("%f+%f=%f",a,b,a+b);
break;
case '-':
printf("%f-%f=%f",a,b,a-b);
break;
case '*':
printf("%f*%f=%f",a,b,a*b);
break;
case '/':
if(b!=0.0)
printf("%f/%f=%f",a,b,a/b);
else
printf("error!");
break;
default:
printf("error!");
break;
}
return 0;
-
西遊記作文10篇(精選)
在我們平凡的日常裏,大家都有寫作文的經歷,對作文很是熟悉吧,通過作文可以把我們那些零零散散的思想,聚集在一塊。怎麼寫作文才能避免踩雷呢?以下是小編幫大家整理的西遊記推薦作文10篇,歡迎閱讀與收藏。西遊記推薦作文篇1從小到大,我有一本一直以來都特別喜愛的一本...
-
讀西遊記作文常用(9篇)
在平日的學習、工作和生活裏,說到作文,大家肯定都不陌生吧,作文根據體裁的不同可以分爲記敘文、說明文、應用文、議論文。還是對作文一籌莫展嗎?下面是小編爲大家收集的讀西遊記作文9篇,僅供參考,希望能夠幫助到大家。讀西遊記作文篇1從我開始上學的那一天起,書便一直...
-
西遊記作文集錦(6篇)
在我們平凡的日常裏,大家一定都接觸過作文吧,根據寫作命題的特點,作文可以分爲命題作文和非命題作文。那麼問題來了,到底應如何寫一篇優秀的作文呢?下面是小編爲大家整理的西遊記作文6篇,供大家參考借鑑,希望可以幫助到有需要的朋友。西遊記作文篇1《西遊記之大聖歸》...
-
西遊記作文6篇(通用)
在平平淡淡的日常中,許多人都有過寫作文的經歷,對作文都不陌生吧,作文是一種言語活動,具有高度的綜合性和創造性。一篇什麼樣的作文才能稱之爲優秀作文呢?下面是小編幫大家整理的西遊記作文6篇,歡迎閱讀與收藏。西遊記作文篇1《西遊記》是一本古代神話小說,小說栩栩如...
相關文章
- Thats what it is there for這句話包含了那些連讀規則?
- 評課稿:skim and match the pictures with each paragraph
- 英語面試問題:Which college classes did you like the
- 八年級英語教材上冊Unit4 Hw d u get t schl
- clothes什麼意思 clothes+clothing+dress等近義詞用法辨析
- i recall with embarrassing clarity the flavor of those particular ashes ?
- chipset是什麼意思-chipset的中文解釋-例句
- 中學生英語作文:A Visit to the Flower Show
- christmas是什麼意思 christmas釋義-例句-動畫視頻
- christmas什麼意思 christmas常見詞組短語用法