1 00:00:00,000 --> 00:00:00,440 2 00:00:00,440 --> 00:00:03,440 >> 揚聲器1:我們分析的最後一次 整數,記得,我們​​使用了一些 3 00:00:03,440 --> 00:00:07,810 布爾表達式來檢查用戶的 輸入N是數字之間 4 00:00:07,810 --> 00:00:11,580 如0和3,4和7,和8和10。 5 00:00:11,580 --> 00:00:14,990 好了,我們這樣做,如果使用的和其他人 如果的,但事實證明,你可以 6 00:00:14,990 --> 00:00:17,990 使用實現相同的邏輯 不同的編程結構 7 00:00:17,990 --> 00:00:21,400 完全同時還實現 恰恰相同的結果。 8 00:00:21,400 --> 00:00:25,000 事實上,我們可以引入一些 所謂的開關,使我們能夠 9 00:00:25,000 --> 00:00:28,660 切換我們的行為視 某些變量的值。 10 00:00:28,660 --> 00:00:29,840 >> 讓我們來嘗試一下這個。 11 00:00:29,840 --> 00:00:35,730 要做到這一點,我首先要包括 通過cs50.h.的方式CS50庫 12 00:00:35,730 --> 00:00:39,960 我也要去,包括標準 庫由標準I / O.h方式。 13 00:00:39,960 --> 00:00:44,540 我要去申報的主要 通常的方式,INT主要作廢。 14 00:00:44,540 --> 00:00:45,650 打開大括號。 15 00:00:45,650 --> 00:00:47,100 關閉大括號。 16 00:00:47,100 --> 00:00:49,720 現在我要問的 用戶對一個整數。 17 00:00:49,720 --> 00:00:56,990 >> printf的,給我一個int 1到10之間。 18 00:00:56,990 --> 00:00:59,310 而現在我要得到 這個int使用CS50 19 00:00:59,310 --> 00:01:01,590 庫函數,調用getInt。 20 00:01:01,590 --> 00:01:06,140 詮釋,讓我們把它叫做N,等於調用getInt。 21 00:01:06,140 --> 00:01:08,500 而現在我要做一個位 分析該整數。 22 00:01:08,500 --> 00:01:13,120 有些武斷,但與此 新構建體被稱為一個開關。 23 00:01:13,120 --> 00:01:16,530 切換n的值如下所示。 24 00:01:16,530 --> 00:01:23,240 >> 在於,n等於1的情況下,或在 情況下,n等於2,或者在殼體 25 00:01:23,240 --> 00:01:28,150 即n等於3,繼續前進, 執行下面這行代碼。 26 00:01:28,150 --> 00:01:34,480 printf的你選擇了一個小整數,休息。 27 00:01:34,480 --> 00:01:37,610 現在,我需要實現等效 的ELT通過簡單 28 00:01:37,610 --> 00:01:40,990 列舉一些其他情況。 29 00:01:40,990 --> 00:01:47,180 >> 在於,n = 4的情況下,或在 情況下,n等於5,或者在殼體 30 00:01:47,180 --> 00:01:53,830 即,n等於6,或者在殼體在於n 等於7,繼續前進,打印出你 31 00:01:53,830 --> 00:01:58,000 挑了個中等詮釋。 32 00:01:58,000 --> 00:01:59,490 打破。 33 00:01:59,490 --> 00:02:02,300 現在的情況下,用戶拿起 一個很大的數字,讓我們 34 00:02:02,300 --> 00:02:04,940 檢測如下。 35 00:02:04,940 --> 00:02:08,900 >> 在用戶挑選8的情況下 或者在用戶選擇的情況下 36 00:02:08,900 --> 00:02:14,110 9,或在用戶選擇的情況下 10,繼續前進,打印出你 37 00:02:14,110 --> 00:02:17,830 挑了個大詮釋。 38 00:02:17,830 --> 00:02:19,180 打破。 39 00:02:19,180 --> 00:02:23,970 ELT,如果用戶沒有選擇一個數 落入任何這些10例, 40 00:02:23,970 --> 00:02:25,520 讓我們有一些默認行為。 41 00:02:25,520 --> 00:02:27,870 在此情況下將如下。 42 00:02:27,870 --> 00:02:32,860 >> 默認情況下,printf的,你選 無效的詮釋。 43 00:02:32,860 --> 00:02:36,100 44 00:02:36,100 --> 00:02:38,220 打破。 45 00:02:38,220 --> 00:02:42,870 現在,如果我保存這個文件編譯 它使開關。 46 00:02:42,870 --> 00:02:44,870 與。斜線開關運行它。 47 00:02:44,870 --> 00:02:46,770 讓我們做一對夫婦健全的檢查。 48 00:02:46,770 --> 00:02:48,440 我會挑1的詮釋。 49 00:02:48,440 --> 00:02:50,110 和ID拿起一個小整數。 50 00:02:50,110 --> 00:02:52,240 >> 讓我們現在要做的。斜線開關。 51 00:02:52,240 --> 00:02:54,514 並在說,負1。 52 00:02:54,514 --> 00:02:56,900 和ID撿到一個無效的整數。 53 00:02:56,900 --> 00:02:59,560 在一天結束時,開關 構造並不能使你做 54 00:02:59,560 --> 00:03:03,320 什麼,你已經不能做 與更熟悉,如果,否則,如果, 55 00:03:03,320 --> 00:03:04,530 else結構。 56 00:03:04,530 --> 00:03:07,470 但如果你有值的有限列表 你正在檢查,一 57 00:03:07,470 --> 00:03:09,820 switch語句可以很 以及使你的代碼更 58 00:03:09,820 --> 00:03:11,310 明確的,或更具可讀性。 59 00:03:11,310 --> 00:03:12,910