switch語句(有一道你錯過的題)

2021-09-26 22:36:27 字數 1330 閱讀 7464

switch語句也是一種分支語句。常常用於多分支的情況。

比如

輸入1,輸出星期一

輸入2,輸出星期二

輸入3,輸出星期三

輸入4,輸出星期四

輸入5,輸出星期五

輸入6,輸出星期六

輸入7,輸出星期日

那我沒寫成 if…else if …else if 的形式太複雜,那我們就得有不一樣的語法形式。 這就是switch 語句。

switch(整型表示式)

語句項是什麼?

//是一些case語句;

//如下:

case 整型常量表示式

語句;

在switch語句中的break

在switch語句中,我們沒法直接實現分支,搭配break使用才能實現真正的分支。

比如:

#include#includeint main()

return 0;

system("pause");

}

有時候我們的需求變了:

輸入1-5輸出的是「weekday」

輸入6-7輸出的是「weekend」

所以我們的**就應該這樣實現了:

#include#includeint main()

return 0;

system("pause");

}

break語句的實際效果是把語句列表劃分為不同的部分

程式設計好習慣

在最後乙個 case 語句的後面加上一條 break語句。 (之所以這麼寫是可以避免出現在以前的最後乙個 case 語句後面忘了新增(break語句)。

default字句

如果表達的值域所有的case標籤的值都不匹配怎麼辦?那就進入default。即case裡的所有值都不匹配的話進入default。

練習:

#include#includeint main()

case 4:

m++//5;

break;

default:

break;

} printf("m = %d, n = %d\n", m, n);

system("pause");

return 0;

}

一道錯過的很基礎的筆試題

目前只記得個大概了 乙個16位的作業系統 unsigned char a 4 3 a 當初自己寫的答案是3,但是真相卻不是這樣?第乙個自己考慮到了隱性強制型別轉換,第二個計算機是通過補碼的形式來表示資料的,不過當時還是算錯了!原碼就是二進位制定點表示法,即最高位為符號位,0 表示正,1 表示負,其餘...

一道有爭議的概率題

昨天 vicyang 在快閃儲存器發了一條閃,原文如下 爭議的概率題 有三張彩票 只有一張中獎 你買走一張 然後老闆當場開了一張 沒中 給你個機會 你可以用剩下的一張換你手裡的 換不換?bbs.bathome.net.我已經在群裡嚼的很熟了,發過來給各位看看 都學成書呆子了。6 3 22 37 隨後...

來改善你的switch語句

善用多型來改善你的switch語句 下面舉的這乙個例子,其實和 重構 第一章裡面的那乙個經典例項很像的,重構 一本書絕對是一本好書,非常不錯值得推薦的一本書。舉乙個例子,是我現在的乙個專案裡面一位同事寫的一小段 如下,它可以根據不同的操作符進行加減乘除方面的操作,而且這一些操作很有可能發生一些變化。...