關于我們
書單推薦
新書推薦
|
C語言程序設計
本書內(nèi)容包括程序設計語言和程序設計的基本概念, C語言的詞法語法, 三種基本控制結構, 函數(shù)的定于和調(diào)用, 數(shù)組、結構體、指針等復雜數(shù)據(jù)類型的定義和應用, 文件操作等。
(1) 配套75個短視頻,詳細講解C語言的關鍵知識點;
(2) 提供教學課件、在線單元測試、答案解析、綜合練習、在線答疑;
(3) 可到中國大學MOOC上獲取上述教學資源(網(wǎng)址見書中“前言”說明)。
(4) 本書以介紹C語言的語法為線索,采用案例教學方法,將程序設計的一般方法和技巧貫穿在實例分析中;
(5) 構建了完善的教學解決方案,提供在線視頻課程、課件、作業(yè)、測試、答案解析;
(6) 視頻課程教學方法靈活,講解精練易懂,培養(yǎng)學生自主學習的能力;
(7) 可以在移動端登錄視頻課程,便于隨時隨地學習。
“C語言程序設計”是高校非計算機專業(yè)學生的編程入門課程,廈門大學公共計算機教學部已開設該門課程超過20年。通過長期的計算機基礎教學實踐與研究,老師們都積累了豐富的經(jīng)驗,并先后修訂了3次教材,前3版都是基于ANSI C的標準編寫的。隨著C標準與時俱進地更新,目前的C99標準與ANSI C標準已有較多差異,有些與本書涉及的內(nèi)容相關。因此促使編者對本書再次進行改版,并配套豐富的教輔資料,具體工作內(nèi)容如下:
1. 修訂內(nèi)容
第4版對各章節(jié)內(nèi)容進行了修改與補充,包括以下5個方面:
(1) 對C標準更改的地方進行了更新。
(2) 增加了對DevC++的介紹,開發(fā)環(huán)境可以有更多選擇。
(3) 為第1~4、6章增設了問答題,這些章節(jié)語法知識點較多,記清有一定的難度。問答題多以選項的形式給出,是對主要知識點的歸納。通過問答,厘清與編程相關的主要或易錯知識點。
(4) 從易于理解的角度出發(fā),對部分教材內(nèi)容進行了補充與修改。
(5) 選擇題、編程題也做了一定程度的擴充,使習題更有針對性,更有梯度。
在對教材進行改版的過程中,同時保留了第3版的特色,注重案例教學,將編程方法與技巧融入各案例分析中。C語言是一門實踐性很強的課程,學好C語言的最佳途徑就是編程,多寫多練。
2. 配套豐富的教輔資源
為推動信息技術與C語言教學的深度融合,進一步提高教學質(zhì)量,收獲更好的教學效果,廈門大學公共計算機教學部啟動在線開放課程的建設,并于2016年10月15日在中國大學MOOC開課,課程鏈接為/course/XMU1001771003,其中有大量的教輔資源。
教輔資源內(nèi)容包括以下4類:
1) 75個教學短視頻
MOOC課程與傳統(tǒng)上課不同,學生是課程學習的主人,教師是學生學習的引導者和輔助者,從“教”為中心改為以“學”為中心。為激發(fā)學生的學習積極性,我們對教學內(nèi)容進行合理規(guī)劃,把知識點碎片化為一個個不超過10分鐘的視頻,精心組織每個視頻的內(nèi)容,充分使用現(xiàn)代技術將知識點以易于吸收的形式展示。
視頻完全免費觀看。每輪開課分13周在線發(fā)布,與課堂教學同步。學生可以自選時間觀看,每輪課程結束后仍然一直開放,參與者可以隨時觀看。
2) PDF講稿
可以免費自由下載。講稿簡潔清晰,以另一種方式闡述教學內(nèi)容,便于復習與歸納。
3) 在線單元測試與作業(yè)
每周知識配有單元測試題,系統(tǒng)自動評分。答題結束后,可以看到每道題的解析。單元測試題以鞏固知識點為目的,同時通過自主做題掌握重點、難點,學習編程技巧。作業(yè)題是編程題,側重于應用,也是書后習題的有益補充。
4) 討論、答疑
重要章節(jié)設計有課堂討論題,是對所學知識的擴充與引導。積極參與課堂討論,有助于語法的深入理解及學以致用。對于學習過程中的任何問題,也可以在討論區(qū)中提出,同學和老師都可以參與解答,在互助的環(huán)境中學習。
到2017年6月10日截止,已完成兩輪開課,視頻、單元測試等各類資源已較成熟。在此,要誠摯地感謝莊朝暉、曾華琳老師的參與,使得內(nèi)容更為豐富完整。
還要特別地感謝黃保和老師,他一直支持MOOC建設,并為《C語言程序設計(第4版)》的編寫無私地提供材料與建議。最后還要感謝廈門大學公共教學部的各位老師,他們?yōu)榻滩牡母倪M一如既往地提供幫助與支持。
《C語言程序設計(第4版)》由黃洪藝策劃和統(tǒng)稿。黃洪藝編寫第1、2、3、11章,李慧琪編寫第4、5、10章,張麗麗編寫第6、7、8、9章。
“C語言程序設計”課程是廈門大學重點建設的慕課課程,本課程可到“中國大學MOOC”觀看學習。每年春、秋兩季開課,開課期間,在“中國大學MOOC”首頁搜索“C程序設計基礎”,即可看到課程并進入學習。也可通過上頁介紹的課程鏈接進入課程。
在使用本書過程中,如有寶貴意見和建議,懇請與黃洪藝聯(lián)系。
編者2017年8月
第1章緒論
1.1程序設計語言
1.2程序設計
1.2.1程序設計概念
1.2.2算法
1.2.3程序設計的步驟
1.3C語言發(fā)展和C++簡介
1.3.1C語言發(fā)展簡述
1.3.2C++簡介
1.3.3集成開發(fā)環(huán)境
1.4C語言程序的構成
1.5Visual C++簡介
1.5.1運行簡單C程序
1.5.2程序調(diào)試一般過程和手段
1.5.3Visual C++調(diào)試方法和工具
1.6DevC++ 5.11簡介
1.6.1C程序的編輯與運行
1.6.2DevC++調(diào)試方法和工具
習題
第2章C語言基礎
2.1C語言詞法
2.1.1基本字符集
2.1.2關鍵字
2.1.3特定字
2.1.4標識符
2.1.5運算符
2.1.6分隔符
2.2C語言的數(shù)據(jù)類型
2.2.1數(shù)據(jù)類型概述
2.2.2基本數(shù)據(jù)類型
2.3常量與變量
2.3.1常量
2.3.2變量
2.3.3常量與變量應用舉例
2.4表達式
2.4.1表達式概述
2.4.2算術表達式
2.4.3類型轉換
2.4.4賦值表達式
2.4.5自增、自減表達式
2.4.6逗號表達式
習題
第3章結構程序設計
3.1結構化程序設計方法
3.2語句的概念
3.3輸入輸出函數(shù)
3.3.1格式輸出函數(shù)
3.3.2格式輸入函數(shù)
3.3.3字符輸出函數(shù)
3.3.4字符輸入函數(shù)
3.4順序結構程序設計舉例
習題
第4章選擇結構程序設計
4.1關系表達式和邏輯表達式
4.1.1關系表達式
4.1.2邏輯表達式
4.2if語句
4.2.1if語句
4.2.2if…else語句
4.2.3if語句的嵌套
4.2.4if…else if語句
4.2.5條件表達式
4.3switch語句
習題
第5章循環(huán)結構程序設計
5.1for語句
5.2while語句
5.3do…while語句
5.4循環(huán)的嵌套
5.5break語句和continue語句
5.6goto語句
5.7常用算法舉例
習題
第6章函數(shù)
6.1函數(shù)定義與調(diào)用
6.1.1函數(shù)定義
6.1.2函數(shù)調(diào)用
6.1.3函數(shù)原型聲明
6.2函數(shù)間數(shù)據(jù)傳遞
6.2.1函數(shù)參數(shù)
6.2.2函數(shù)返回值
6.3函數(shù)的嵌套與遞歸
6.3.1函數(shù)嵌套調(diào)用
6.3.2函數(shù)遞歸調(diào)用
6.4函數(shù)應用舉例
6.5變量屬性
6.5.1變量的生存期和可見性
6.5.2變量的作用域
6.5.3變量的存儲類別
習題
第7章編譯預處理
7.1宏定義
7.1.1不帶參數(shù)的宏
7.1.2帶參數(shù)的宏
7.1.3取消宏定義
7.2文件包含
7.3條件編譯
7.3.1#if和#endif命令
7.3.2#ifdef和#ifndef命令
7.3.3defined預處理運算符
習題
第8章數(shù)組
8.1一維數(shù)組
8.1.1一維數(shù)組的定義
8.1.2一維數(shù)組的引用
8.1.3一維數(shù)組的初始化
8.1.4一維數(shù)組應用舉例
8.2多維數(shù)組
8.2.1二維數(shù)組的定義和引用
8.2.2二維數(shù)組的初始化
8.2.3二維數(shù)組應用舉例
8.3字符串
8.3.1字符型數(shù)組
8.3.2字符串
8.3.3字符串處理函數(shù)
8.3.4字符串應用舉例
習題
第9章結構體、共用體和枚舉類型
9.1結構體
9.1.1結構體類型的定義
9.1.2結構體變量定義和初始化
9.1.3結構體變量的引用
9.1.4結構體數(shù)組
9.2共用體
9.2.1共用體類型的定義
9.2.2共用體變量的定義
9.3枚舉類型
9.3.1枚舉類型的定義
9.3.2枚舉變量的定義
9.4typedef語句
習題
第10章指針
10.1地址與指針變量
10.1.1內(nèi)存單元地址
10.1.2指針
10.1.3指針變量的定義和初始化
10.1.4指針的運算
10.2指針與函數(shù)
10.2.1指針變量作為函數(shù)參數(shù)
10.2.2函數(shù)的返回值為指針
10.2.3指向函數(shù)的指針
10.3指針與數(shù)組
10.3.1一維數(shù)組與指針
10.3.2字符串與指針
10.3.3指針數(shù)組
10.4指針與結構體
10.4.1指向結構體的指針
10.4.2動態(tài)存儲分配
10.4.3鏈表
習題
第11章文件
11.1文件概述
11.2文件的打開和關閉
11.2.1文件的打開
11.2.2文件的關閉
11.3文件的讀寫
11.3.1文本文件的讀寫
11.3.2二進制文件的讀寫
11.4文件的定位
習題
附錄AASCII編碼字符集
附錄BC語言運算符的優(yōu)先級和結合性
參考文獻
第5章
CHAPTER 5
循環(huán)結構程序設計
循環(huán)結構是程序中用得最多的一種控制結構,大多數(shù)程序都要用到循環(huán),它是解決許多問題的基本方法,特別是涉及一組數(shù)據(jù)處理問題,例如,1~100的所有整數(shù)累加求和,找出10000以內(nèi)的所有素數(shù),輸入并計算某課程的全班平均成績等。
循環(huán)結構一般由循環(huán)初始化、循環(huán)條件、循環(huán)體三個部分組成。其中,循環(huán)初始化提供初始數(shù)據(jù),為循環(huán)條件提供初值; 循環(huán)條件描述了重復操作需要滿足的條件,條件成立執(zhí)行循環(huán)體,條件不成立則終止循環(huán); 循環(huán)體是要重復執(zhí)行的語句,它包含了對循環(huán)條件的控制,為下一次執(zhí)行循環(huán)體準備數(shù)據(jù)。一般來說,每一次循環(huán)操作都有循環(huán)趨于結束的語句,否則,將會出現(xiàn)“死循環(huán)”,即循環(huán)永不終止。
C語言提供了三種循環(huán)語句: for語句、while語句和do…while語句。for語句適合計數(shù)變量遞增或遞減的循環(huán),while語句在循環(huán)體執(zhí)行之前測試循環(huán)條件,do…while語句在循環(huán)體執(zhí)行之后測試循環(huán)條件。此外,break語句、continue語句和goto語句可以改變循環(huán)的執(zhí)行流程。熟練掌握循環(huán)語句的概念和運用是程序設計的基本要求。
5.1for語句
for循環(huán)稱為計數(shù)型循環(huán),特別適合描述循環(huán)次數(shù)已知的循環(huán)。
圖5.1.1for循環(huán)流程圖
for語句的語法格式如下:
for(表達式1;表達式2;表達式3)
循環(huán)體
for循環(huán)執(zhí)行過程如圖5.1.1所示,執(zhí)行流程描述如下:
(1) 計算表達式1;
(2) 計算表達式2,若其值非0,則執(zhí)行循環(huán)體語句,然后執(zhí)行步驟(3); 若其值為0,則退出循環(huán),轉向步驟(5);
(3) 計算表達式3;
(4) 轉向步驟(2)繼續(xù)執(zhí)行;
(5) 執(zhí)行for循環(huán)的后續(xù)語句。
說明:
(1) 通常根據(jù)某個變量的值判斷是否繼續(xù)循環(huán),該變量稱為循環(huán)控制變量,簡稱循環(huán)變量。
(2) 表達式1通常用于給循環(huán)控制變量賦初值,在循環(huán)結構中僅被執(zhí)行一次。
(3) 表達式2是循環(huán)是否繼續(xù)的條件,通常為關系表達式或邏輯表達式,也可以是算術表達式,當表達式2的值非0時執(zhí)行循環(huán)體,否則結束循環(huán)。
(4) 表達式3通常用于更新循環(huán)控制變量的值,使循環(huán)條件發(fā)生變化。
(5) 循環(huán)體是循環(huán)結構的主體,表達要重復執(zhí)行的操作,如果循環(huán)體多于一個語句,必須用花括號{}把它們括起來,形成復合語句。循環(huán)體也稱為for語句的內(nèi)嵌語句。
(6) 表達式1、表達式2、表達式3都可以省略,但是for中兩個分號不能省略。如果省略表達式2,則默認表達式2為真值,必須在循環(huán)體中設計其他停止循環(huán)的語句。
for語句的最簡單應用也是最容易理解的形式是使用循環(huán)變量,用循環(huán)變量的初值、終值、循環(huán)變量的增量來決定循環(huán)的執(zhí)行。
【例5.1.1】繪制5條直線,每條直線由4個“-”符號組成。
分析: 本例需重復輸出5條直線,因此,循環(huán)體為輸出一條直線的語句,循環(huán)體共執(zhí)行了5次。
……
你還可能感興趣
我要評論
|