“十三五”高等職業(yè)教育規(guī)劃教材:C語言程序設計
定 價:32 元
當前圖書已被 2 所學校薦購過!
查看明細
- 作者:[中國]羅劍;代崴;邢翠
- 出版時間:2019/7/1
- ISBN:9787113260514
- 出 版 社:中國鐵道出版社
- 中圖法分類:TP312C
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書采用“理論講解+應用示例+項目實踐”的內容組織思路進行編寫,每個知識點都配有相應的示例,并為示例添加了視頻,方便學生學習。全書共分10 章,主要內容包括:開發(fā)C 語言的基礎與開發(fā)工具講解、使用各種數(shù)據(jù)類型聲明變量并結合運算符進行表達式計算、應用順序結構設計程序解決簡單實際問題、應用選擇結構設計程序實現(xiàn)分支判斷、應用循環(huán)結構設計程序實現(xiàn)重復操作、應用數(shù)組設計程序實現(xiàn)批量數(shù)據(jù)處理、應用函數(shù)設計程序實現(xiàn)模塊化設計、定義結構體和枚舉類型實現(xiàn)復雜的數(shù)據(jù)結構描述并使用結構體數(shù)組、使用C語言的指針實現(xiàn)靈活的數(shù)據(jù)訪問和函數(shù)調用。各章配有項目實踐以提升學生對結構化程序設計和模塊化的程序設計的理解,項目實踐采用“西游記”游戲項目貫穿第1~8章。本書適合作為高等職業(yè)院校程序設計課程的教材,也可作為等級考試、各類培訓班的教材及技能設計大賽和廣大計算機愛好者的自學參考用書。
(1)每個知識點都配有相應的示例,并為示例添加了視頻。(2)采用“西游記”游戲貫穿第1~8章的項目實踐,注重銜接。
隨著計算機技術的飛速發(fā)展,計算機在各個學科和領域得到了廣泛應用,而這些應用都需要編寫程序去解決各種現(xiàn)實生活中的問題。C語言是一門面向過程、抽象化的通用程序設計語言,廣泛應用于底層開發(fā)。C語言是不需要任何運行環(huán)境支持便能運行的高效率程序設計語言。盡管C語言提供了許多低級處理的功能,但仍然保持著跨平臺的特性,以標準規(guī)格寫出的C語言程序可在包括一些類似嵌入式處理器以及超級計算機等作業(yè)平臺的許多計算機平臺上進行編譯。C語言在很多領域都是首選的編程語言,運用非常廣泛,也是非常適合初學者入門的程序設計語言。C語言程序設計是非常重要的一門專業(yè)基礎課,是學習面向對象程序設計、數(shù)據(jù)結構和算法的基礎。通過本課程的學習,學生能夠使用編程思維去思考與解決問題,為研制開發(fā)各種系統(tǒng)和應用軟件奠定理論和實踐基礎。該課程的學習效果不僅關系到后續(xù)課程的學習,而且直接關系到軟件設計水平的提高和專業(yè)素養(yǎng)的培養(yǎng),在理工科基礎教育中有非常重要的作用。本課程考慮到大部分學生都是初次接觸編程語言,使用程序解決問題思路還不明確,基于此問題,本書采用“理論講解+應用示例+項目實踐”的方式,重點提升學生解決問題的能力和項目開發(fā)能力。每個知識點都配有相應的示例,并為示例添加了視頻。本書具有如下特點:(1)由淺入深、逐步深入。每個知識點首先介紹基本語法,然后通過示例講解知識點的用法,最后通過項目實踐應用知識點。(2)項目貫穿、注重銜接。本書項目實踐采用“西游記”游戲貫穿第1~8章,課程中將“西游記”游戲分解到每個章節(jié)中,學完一章完成項目的部分內容,所有章節(jié)完成,項目結束,提升學生的學習成就感。(3)注重總結、項目提升。在學完循環(huán)后,會對C語言基礎知識進行總結,并配合“萬年歷”項目,提升學生基礎編程能力。學習完指針后,會對數(shù)組、結構體、函數(shù)、指針進行總結,配合“電話訂餐系統(tǒng)”項目,提升學生的模塊化編程能力。全書分為10章,內容安排如下:第1 章:介紹C 語言的發(fā)展史和開發(fā)工具,并通過一個簡單的C 程序示例,介紹學習C 語言的入門知識,主要包括開發(fā)工具的使用、C程序的基本結構以及運行、調試C程序的方法。第2章:介紹變量存儲程序中的臨時數(shù)據(jù),包括數(shù)據(jù)類型、變量的聲明與初始化以及運算符和表達式等內容。PREFACE 前 言第3 章:介紹三大程序結構中的選擇結構,包括if 語句、if…else 語句、多重if 語句和嵌套if、對比多重if和switch語句解決多選擇的問題、跳轉語句的使用。第4 章:介紹三大控制結構中的“循環(huán)結構”,分別使用for、while、do…while 語句實現(xiàn)循環(huán),其中理解循環(huán)的執(zhí)行流程是本章的重點,在循環(huán)中使用跳轉語句break 和continue 是本章的難點。第5章:講解使用數(shù)組存儲多個數(shù)據(jù),主要包括數(shù)組的聲明、賦值、使用,以及使用數(shù)組和循環(huán)結合解決批量操作的問題。第6章:介紹自定義數(shù)據(jù)類型中的結構體和枚舉數(shù)據(jù)類型,主要包括結構體的定義、使用,枚舉類型的定義和使用、結構體數(shù)組的應用。第7章:通過函數(shù)實現(xiàn)模塊化編程,主要包括函數(shù)的定義、函數(shù)的調用。本章要掌握函數(shù)定義和調用的語法,能夠使用函數(shù)實現(xiàn)對復雜問題的分解,實現(xiàn)模塊化的程序設計。第8章:介紹指針的概念和使用。讀者將會在這一章中了解指針的含義,如何使用指針訪問變量、數(shù)組的元素,以及調用以指針作為形參的函數(shù)。第9章:對C語言基礎、變量、數(shù)據(jù)類型、運算符、選擇結構、循環(huán)結構進行復習總結,對各個知識模塊進行梳理,完成電子萬年歷的綜合項目。第10 章:復習C 語言的難點內容,包括數(shù)組、結構體、函數(shù)和指針等內容,完成電話訂餐系統(tǒng)的綜合項目。本書由羅劍、代崴、邢翠任主編,高欣、趙傳氐任副主編。其中,羅劍編寫第6、7、9、10章,代崴編寫第4、5、8章,邢翠編寫第1章,趙傳氐編寫第2章,高欣編寫第3章。本書在編寫過程中得到了信息工程系蔡明主任和王中剛副主任的大力支持,在編寫和出版過程得到了中國鐵道出版社有限公司的支持,同時得到了武漢信息傳播職業(yè)技術學院信息工程系領導的支持,在此深表感謝。由于作者水平所限,加上計算機學科的發(fā)展迅速,書中難免有不妥之處,懇請讀者批評指正。羅劍2019年4月
羅劍、代崴、邢翠
第1 章 C 語言基礎.............................. 11.1 C 語言簡介........................................ 11.1.1 C 語言的發(fā)展歷史...................... 11.1.2 C 語言發(fā)展現(xiàn)狀.......................... 21.1.3 如何學習C 語言......................... 21.2 開發(fā)工具........................................... 31.2.1 安裝Visual Studio 2010 Express.... 31.2.2 開始使用Visual Studio 2010Express ........................................ 51.3 開發(fā)C 程序....................................... 81.3.1 添加源文件................................. 81.3.2 編寫代碼.................................... 91.3.3 運行程序.................................. 101.4 C 程序的組成.................................. 111.4.1 注釋.......................................... 111.4.2 main()函數(shù)................................ 121.4.3 return 語句................................ 131.4.4 聲明與賦值............................... 131.4.5 #include 與頭文件.................... 141.4.6 printf()函數(shù)................................ 141.5 C 語言程序編譯的基本過程........... 161.6 項目實踐......................................... 161.6.1 任務1:游戲介紹與菜單......... 171.6.2 任務2:游戲角色介紹............. 17小結 ....................................................... 18作業(yè) ....................................................... 19第2 章 變量與數(shù)據(jù)類型..................... 212.1 變量與常量..................................... 212.1.1 變量.......................................... 212.1.2 常量.......................................... 222.1.3 標識符....................................... 222.2 數(shù)據(jù)類型.......................................... 222.2.1 基本數(shù)據(jù)類型........................... 232.2.2 派生數(shù)據(jù)類型........................... 252.3 使用變量.......................................... 252.4 使用printf()函數(shù).............................. 262.4.1 使用printf()函數(shù)打印數(shù)值的語法........................................... 262.4.2 格式命令................................... 272.5 表達式.............................................. 272.5.1 表達式概述............................... 272.5.2 運算符....................................... 272.6 類型轉換.......................................... 292.7 調試C 程序...................................... 302.7.1 進入調試模式........................... 302.7.2 設置斷點................................... 322.7.3 單步跟蹤查看變量的值............ 332.7.4 逐語句調試............................... 352.8 項目實踐.......................................... 352.8.1 任務1:使用變量存儲角色的信息........................................... 352.8.2 任務2:計算與比較游戲角色的攻擊力和防御力........................ 36小結 ........................................................37作業(yè) ........................................................38第3 章 選擇結構............................... 393.1 流程圖與程序結構.......................... 393.1.1 流程圖....................................... 393.1.2 程序結構................................... 403.2 scanf()函數(shù)....................................... 41目 錄CONTENTSIIC語言程序設計3.2.1 為什么需要scanf()函數(shù)............ 413.2.2 scanf()函數(shù)................................ 413.3 if 語句.............................................. 443.3.1 條件語句.................................. 443.3.2 單分支if 語句........................... 443.3.3 if…else 語句............................. 453.3.4 嵌套if 語句.............................. 473.3.5 多重if 語句.............................. 493.4 switch 語句...................................... 503.5 項目實踐......................................... 513.5.1 任務1:完成菜單選擇的功能... 513.5.2 任務2:實現(xiàn)玩家登錄功能..... 52小結 ....................................................... 53作業(yè) ....................................................... 53第4 章 循環(huán)結構............................... 554.1 理解循環(huán)的使用場景...................... 554.1.1 為什么要使用循環(huán)................... 554.1.2 什么是循環(huán)............................... 554.2 三種循環(huán)結構.................................. 564.2.1 for 循環(huán)..................................... 564.2.2 while 循環(huán)................................. 594.2.3 do...while 循環(huán).......................... 624.3 三種結構的互相轉換...................... 644.4 關鍵字break 和continue 的用法.... 654.4.1 break 語句................................. 654.4.2 continue 語句............................ 674.5 嵌套循環(huán)......................................... 694.6 死循環(huán)............................................. 714.7 綜合運用......................................... 724.8 項目實踐......................................... 784.8.1 任務1:使用循環(huán)優(yōu)化菜單..... 784.8.2 任務2:使用循環(huán)打小怪......... 79小結 ....................................................... 81作業(yè) ....................................................... 82第5 章 數(shù)組...................................... 855.1 了解數(shù)組的使用場景...................... 855.2 使用一維數(shù)組.................................. 865.2.1 一維數(shù)組的定義........................ 865.2.2 一維數(shù)組的初始化.................... 865.2.3 訪問數(shù)組元素........................... 875.3 使用二維數(shù)組.................................. 885.3.1 二維數(shù)組的定義........................ 885.3.2 二維數(shù)組的初始化.................... 895.3.3 訪問數(shù)組元素........................... 905.4 使用字符串與字符數(shù)組................... 925.5 項目實踐.......................................... 945.5.1 任務1:使用數(shù)組存儲小怪信息........................................... 945.5.2 任務2:使用數(shù)組存儲玩家的裝備信息................................... 94小結 ........................................................96作業(yè) ........................................................96第6 章 結構體和枚舉........................ 986.1 結構體概述...................................... 986.2 結構體定義...................................... 996.3 結構體變量.................................... 1006.3.1 結構體變量聲明...................... 1006.3.2 結構體變量賦值...................... 1006.4 結構體數(shù)組.................................... 1036.4.1 定義結構體數(shù)組...................... 1036.4.2 初始化結構體數(shù)組.................. 1036.4.3 結構體數(shù)組元素的引用.......... 1036.5 枚舉............................................... 1046.5.1 枚舉類型的定義...................... 1056.5.2 枚舉類型變量的定義.............. 1056.6 項目實踐........................................ 1066.6.1 任務1:定義玩家角色結構體......................................... 1066.6.2 任務2:使用結構體數(shù)組存儲產生的妖怪............................. 107小結 ...................................................... 109作業(yè) ...................................................... 109目 錄III第7 章 函數(shù).................................... 1117.1 函數(shù)簡介........................................1117.1.1 系統(tǒng)函數(shù).................................1127.1.2 用戶自定義函數(shù)......................1137.2 自定義函數(shù)....................................1137.2.1 返回值類型..............................1137.2.2 函數(shù)名.....................................1147.2.3 參數(shù)列表.................................1147.2.4 函數(shù)體.....................................1147.3 函數(shù)調用........................................1147.3.1 函數(shù)調用的一般形式..............1157.3.2 函數(shù)調用的方式......................1157.3.3 函數(shù)聲明和函數(shù)原型..............1167.4 函數(shù)應用........................................1167.4.1 無返回值函數(shù)..........................1167.4.2 有返回值函數(shù)..........................1177.5 變量的作用域.................................1187.5.1 什么是變量的作用域..............1187.5.2 變量的訪問類型......................1187.6 項目實踐........................................1217.6.1 任務1:使用函數(shù)封裝購買裝備的過程..............................1217.6.2 任務2:使用函數(shù)封裝斬妖除魔的過程..............................122小結 ..................................................... 125作業(yè) ..................................................... 125第8 章 指針.................................... 1278.1 了解指針的含義.............................1278.1.1 內存.........................................1278.1.2 指針......................................... 1298.2 使用指針........................................ 1308.2.1 指針的定義............................. 1308.2.2 訪問指針所指的內存:“*”運算符............................. 1318.2.3 使用指針訪問數(shù)組.................. 1338.3 在函數(shù)的形參中使用指針............. 1348.3.1 傳址調用................................. 1348.3.2 使用字符串處理函數(shù).............. 1368.4 使用calloc()、free()動態(tài)申請、釋放內存........................................ 1388.5 項目實踐........................................ 1408.5.1 任務1:定義裝備數(shù)組指針......................................... 1408.5.2 任務2:管理玩家的裝備信息......................................... 142小結 ...................................................... 144作業(yè) ...................................................... 144第9 章 項目實戰(zhàn)1:電子萬年歷...... 1469.1 知識點回顧與總結........................ 1469.2 項目能力提升................................ 1489.2.1 項目分析................................. 1489.2.2 項目任務與編碼...................... 149第10 章 項目實踐2:電話訂餐系統(tǒng)... 15310.1 知識點回顧與總結....................... 15310.2 項目能力提升.............................. 15410.2.1 項目分析............................... 15410.2.2 項目任務與編碼.................... 155