




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、第第4章流程控制章流程控制C語言程序設計語言程序設計主講教師:祝建華主講教師:祝建華 華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計2本章主要介紹一般算法的基本流程和對應的本章主要介紹一般算法的基本流程和對應的C語言描述的流程語言描述的流程控制語句,是程序設計的核心內(nèi)容之一??刂普Z句,是程序設計的核心內(nèi)容之一。 重點討論了含有選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)的算法設計和重點討論了含有選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)的算法設計和C以及以及它們之間相互關系。難點是選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)以及它們之間相互關系。難點是選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)以及3種結(jié)構(gòu)的復合結(jié)構(gòu)。種結(jié)構(gòu)的復合結(jié)構(gòu)。 引入了結(jié)構(gòu)化程序設計的概念,討論
2、了結(jié)構(gòu)化程序設計的基本引入了結(jié)構(gòu)化程序設計的概念,討論了結(jié)構(gòu)化程序設計的基本方法以及適度結(jié)構(gòu)化的觀念。方法以及適度結(jié)構(gòu)化的觀念。內(nèi)容摘要內(nèi)容摘要華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計3重點講解重點講解4.1C語句分類語句分類 4.2表達式語句表達式語句 4.3復合語句復合語句4.4if語句語句4.5switch語句語句4.6while語句語句 4.7for語句語句 4.8 do while語句語句4.9goto語句語句4.10break、continue和和return語句語句4.11 嵌套循環(huán)程序設計嵌套循環(huán)程序設計小結(jié)華中科技大學計算機學院華中科技大學計算機
3、學院C語言程序設計語言程序設計4目錄4.1C語句概述語句概述 計算機的算法之計算步驟是可以按照順序、選擇和循環(huán)三種順序計算機的算法之計算步驟是可以按照順序、選擇和循環(huán)三種順序執(zhí)行的。執(zhí)行的。 已經(jīng)證明,任何復雜的算法都可以通過順序、分支和循環(huán)三種基已經(jīng)證明,任何復雜的算法都可以通過順序、分支和循環(huán)三種基本結(jié)構(gòu)的來實現(xiàn)。本結(jié)構(gòu)的來實現(xiàn)。華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計5 4.1C語句概述語句概述華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計64.2表達式語句表達式語句目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程
4、序設計7 華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計84.3復合語句復合語句目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計9華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計10華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計11華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計124.4if 語句語句目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計13 華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計14 華中科技大學計算機學院
5、華中科技大學計算機學院C語言程序設計語言程序設計15華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計16華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計17華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計184.5switch語句語句 目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計19i = 1;switch ( i ) case 0:printf(%dt, i); case 1:printf(%dt, i+); case 2:printf(%dt, i+); case 3:printf(%d, i+
6、); default:printf(n);printf(%dn, i); 華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計20 華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計21華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計224.6while語句語句目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計23華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計24華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計25 華中科技大學計算機學院華中科技大學計算機學院C語言
7、程序設計語言程序設計26 / /華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計27#include#define COPY 0#define START 1#define COMMENT 2#define END 3void main(void) char c; int state; state = COPY; while (c = getchar() != EOF) switch (state) case COPY: if (c = /) state = START;else putchar(c);break;case START: if (c = *) state
8、= COMMENT;else putchar(/); state = (c = /) ? START : (putchar(c),COPY); break;case COMMENT: if (c = *) state = END; break;case END: state = (c = /) ? COPY : (c = *) ? END : COMMENT); 華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計284.7for語句語句目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計29int i;for(i = 1; i 4; i+) print
9、f(”i=%d s=%dn”, i, 2 * i);int a, b;for (a = 10, b = 5; a = b; a+) printf(”a=%d,b=%dn”, a, b);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計30int i;i = 1;for(; i 4;) printf(”i=%d s=%dn”, i, 2 * i); i+;int i;i = 1;for(; i 4; i+) printf(”i=%d s=%dn”, i, 2 * i);int x;for (x = 1; x != 10; x += 2) printf(”x=%dn”, x)
10、; int i;for(i = 1; i 4; i+) printf(”i=%d s=%dn”, i, 2 * i);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計31i = 1;for(; ;) printf(”i=%d s=%dn”, i, 2 * i); i+; if (!(i 4) break;華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計32 #includevoid main(void) int x, m; printf(”input integer end of 0:n”); scanf(”%d”, &x); for(m =
11、 x ; x != 0; ) scanf(”%d”, &x); if (max x) m = x; printf(”max=%dn”, m);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計33#includevoid main(void)int n, i; unsigned long f; printf(”input n:n”); scanf(”%d”, &n); for (f = 1, i = 1; i = n; i+) f *= i; printf(”%d!=%lun”, n, f);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序
12、設計344.8do while語句語句目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計35 #includevoid main(void) int x, digit; printf(”input an integer:n”); scanf(”%d”, &x); do digit = x % 10; printf(”%d”, digit); x /= 10; while (x != 0); printf(”n”);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計36! 7! 5! 3)sin(753xxxxx!)12()1(121nxann
13、nx華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計37#include #include #define PI 3.14159#define EPS 1e-7void main(void) int n; double x, an, sum; printf(”input a angle:n”); scanf(”%lf”, &x); x = x * PI / 180; sum = 0; an = x; n = 1; do sum += an; +n; an *= (-x * x)/(2 * n - 2) * (2 * n - 1); while(fabs(an) =
14、 EPS); printf(”sin(%.4f)=%.4fn”, x, sum);x華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計38。a 華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計39a#include#include#define EPS 1e-6void main(void) double x, d; printf(”input initial root:n”); scanf(”%lf”, &x); do d = -(3 * x - 4) * x) - 5) * x + 13); d = d/(9 * x - 8) * x -
15、5); x += d; while (fabs(d) EPS); printf(”x=%fn”, x);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計40華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計41#include #include void main(void) int n, i, k, r; printf(”input n:n”); scanf(”%d”, &n); if (n = 2) printf(”2 is a primen”); else if (n 2) i = 1; k = sqrt(n); do +i; r = n
16、 % i; while (r & i = k); if(r) printf(”%d is a primen”, n); else printf(”%d isnt a primen”, n); #include#includevoid main(void) int n, i, j, r; do printf(”input an integer(=2):n”); scanf(”%d”, &n); while(n 2); r = 1; for (i = 2, j = sqrt(n); r & i = j; i+) r = n % i; if(r) printf(”%d is
17、a prime.n”, n); else printf(”%d is not a prime.n”, n);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計42 華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計434.9goto語句和標號定義語句和標號定義目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計44 #includevoid main(void) int x, digit; printf(”input an integer:n”); scanf(”%d”, &x); do digit = x % 10; pr
18、intf(”%d”, digit); x /= 10; while (x != 0); printf(”n”);#includevoid main(void) int x, digit; printf(”input an integer:n”); scanf(”%d”, &x); L: digit = x % 10; printf(”%d”, digit); x /= 10; if (x != 0) goto L; printf(”n”);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計454.11嵌套循環(huán)程序設計嵌套循環(huán)程序設計目錄華中科技大學計算機學院華中科技
19、大學計算機學院C語言程序設計語言程序設計46#includevoid main(void) int i, j, n; long s, term; printf(”input n:n”); scanf(”%d”, &n); for (s = 0, i = 1; i = n; +i) term = 1; j = 1; do term *= i; while (+j = i); s += term; printf(”s=%ldn”, s);華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計474.10break、continue和和return語句語句目錄華中科技大學計算機學院華中科技大學計算機學院C語言程序設計語言程序設計48#include#includevoid main(void) int i, n, k; for
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 班主任關于學習習慣的指導計劃
- 生物學觀察與記錄技巧計劃
- 藥學部臨床溝通能力提升計劃
- 2025年地面瞄準設備、定位定向設備項目合作計劃書
- 中國開源軟件行業(yè)發(fā)展環(huán)境、市場運行格局及投資前景研究報告(2025版)
- 2025年微循環(huán)測試系統(tǒng)項目合作計劃書
- 2025年動葉可調(diào)軸流電站用風機合作協(xié)議書
- 2025年磁共振成像裝置合作協(xié)議書
- 2025年油氣鉆采服務合作協(xié)議書
- 珠寶行業(yè)商品質(zhì)量免責合同
- 農(nóng)產(chǎn)品質(zhì)量安全及其檢測技術課件
- 外科學緒論課件
- 2020年中國人身保險產(chǎn)品研究報告
- 安全生產(chǎn)目標責任制考核表
- 常見織帶花鏈的排法和穿棕方法
- 《化工工程制圖》完整教案
- 2023年廣東省中考試卷(語數(shù)英物化史生等共11套)帶答案解析
- DFX工藝設計方法介紹
- 洪恩識字識字卡(001-100)可直接打印剪裁
- 違反八項規(guī)定問題典型案例、法規(guī)依據(jù)和關注點
- J-STD-033D處理包裝運輸和使用濕度回流和過程敏感設備
評論
0/150
提交評論