揚聲器1:我們分析的最後一次 整數,記得,我們​​使用了一些 布爾表達式來檢查用戶的 輸入N是數字之間 如0和3,4和7,和8和10。 好了,我們這樣做,如果使用的和其他人 如果的,但事實證明,你可以 使用實現相同的邏輯 不同的編程結構 完全同時還實現 恰恰相同的結果。 事實上,我們可以引入一些 所謂的開關,使我們能夠 切換我們的行為視 某些變量的值。 讓我們來嘗試一下這個。 要做到這一點,我首先要包括 通過cs50.h.的方式CS50庫 我也要去,包括標準 庫由標準I / O.h方式。 我要去申報的主要 通常的方式,INT主要作廢。 打開大括號。 關閉大括號。 現在我要問的 用戶對一個整數。 printf的,給我一個int 1到10之間。 而現在我要得到 這個int使用CS50 庫函數,調用getInt。 詮釋,讓我們把它叫做N,等於調用getInt。 而現在我要做一個位 分析該整數。 有些武斷,但與此 新構建體被稱為一個開關。 切換n的值如下所示。 在於,n等於1的情況下,或在 情況下,n等於2,或者在殼體 即n等於3,繼續前進, 執行下面這行代碼。 printf的你選擇了一個小整數,休息。 現在,我需要實現等效 的ELT通過簡單 列舉一些其他情況。 在於,n = 4的情況下,或在 情況下,n等於5,或者在殼體 即,n等於6,或者在殼體在於n 等於7,繼續前進,打印出你 挑了個中等詮釋。 打破。 現在的情況下,用戶拿起 一個很大的數字,讓我們 檢測如下。 在用戶挑選8的情況下 或者在用戶選擇的情況下 9,或在用戶選擇的情況下 10,繼續前進,打印出你 挑了個大詮釋。 打破。 ELT,如果用戶沒有選擇一個數 落入任何這些10例, 讓我們有一些默認行為。 在此情況下將如下。 默認情況下,printf的,你選 無效的詮釋。 打破。 現在,如果我保存這個文件編譯 它使開關。 與。斜線開關運行它。 讓我們做一對夫婦健全的檢查。 我會挑1的詮釋。 和ID拿起一個小整數。 讓我們現在要做的。斜線開關。 並在說,負1。 和ID撿到一個無效的整數。 在一天結束時,開關 構造並不能使你做 什麼,你已經不能做 與更熟悉,如果,否則,如果, else結構。 但如果你有值的有限列表 你正在檢查,一 switch語句可以很 以及使你的代碼更 明確的,或更具可讀性。