C語言程序設計(第三版)
-
【作 者】主 編 丁紅 王立新 蔡開立
【I S B N 】978-7-5226-2167-8
【責任編輯】魏淵源
【適用讀者群】高職高專
【出版時間】2024-03-05
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】216
【千字數】320
【印 張】13.5
【定 價】¥36
【叢 書】高等職業教育電子信息課程群系列教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書從高職高專的培養目標和學生特點出發,秉承“教學做合一”的原則,以“激發學生學習興趣”為著眼點,認真組織內容,精心設計案例,書中內容淺顯易懂,結構循序漸進,語言生動有趣。
全書共分為六篇:入門篇以形象生動的實例介紹了C語言的基本概念和上機步驟;基礎篇包括數據類型、運算符和表達式、輸入/輸出函數;實戰篇介紹了算法的概念和表示,用實例講述了結構化程序設計方法和模塊化程序設計方法;提高篇闡述了幾種特殊的數據類型,包括數組、指針、結構體和共用體;文件篇介紹了文件的使用方法;實踐篇包含與理論內容相配套的實驗。本書配套的相關微課視頻可通過掃描書中二維碼觀看。
本書可作為高職高專院校“C語言程序設計”課程的教材,也可作為中專院校的教學參考書。
理念新穎:從“教學做合一”的理念出發,改變傳統教學模式,激發學生學習興趣,提升學習效果。
面向基礎:針對初學者設計內容結構,通過輕松幽默的口語化文字和淺顯易懂的案例降低學習門檻。
案例豐富:從問題導入知識點,通過設計豐富案例使理論與操作演練融合,達到學以致用的效果。
高等職業技術教育主要是以培養具有職業理想、職業道德,掌握職業技能,知曉職業規范,面向生產、建設、管理、服務第一線需要的高素質技能型人才為目標。從這個目標出發,高職教育應走校企合作、產學結合的發展之路,這是高職教育人才培養的基本模式。從這個目標出發,高職院校應采用“教學做一體化”的教學模式。為此必須創建與這一思想相吻合的教材體系。
教育家陶行知先生倡導“教學做合一”的思想,他提出學習不應該是單方面的,也不是灌輸的,應該是教與學雙方的,學生是主體,并指出“教學做是一件事,不是三件事。我們要在做上教,在做上學。”陶行知先生所說的“做上教、做上學”意指“做中教、做中學”,也就是說讓學生在實踐操作中掌握理論知識,即“先會后懂”,這樣的教學模式更能提高學生的學習興趣,激發學生的學習激情。
C語言是面向過程的編程語言,較之于面向對象的編程語言,C語言的語法煩瑣,界面枯燥,對初學者而言,普遍感到難學。為此必須改變傳統的C語言教學內容和教學模式,結合學生更喜歡動手操作的特點,改變過去先講理論,然后進行實際操作的傳統方法,從“教學做合一”的理念出發,采用“做中學”“用中學”“先會后懂”的教學模式,從一個實例出發,讓學生學會如何做,達到“我會了”的效果,然后再講解這樣做的原理,以實現“我懂了”的良好效果。這樣更能激發學生的學習興趣和積極性。正如陶老先生所說“學生有了興味,就肯用全副精神去做事情,所以‘學’和‘樂’是不可分離的。”
本書從高職高專的培養目標和學生的特點出發,秉承“教學做一體化”的原則,以“激發學生學習興趣”為著眼點,認真組織內容、精心設計案例,力求淺顯易懂、講夠理論、注重實踐。本書具有以下特點:
先進的教學理念:從培養學生的興趣出發,從C語言最基礎的理論入手,教會學生夠用的理論知識。
全新的教學方法:秉承“教學做”相結合的原則,邊學邊做,講練結合,學以致用。
較低的學習門檻:從“問題驅動”出發,導入每個知識點,和操作演練相結合,從而降低了學習C語言的門檻,很容易上手。
快樂的學習方式:書中語言口語化,輕松而又幽默,使學習者能夠帶著快樂的心情學習;案例淺顯易懂,實用價值高,從而增強學習者的成就感和自信心。
本書由丁紅、王立新、蔡開立擔任主編,孫豐偉、王輝、鐘大偉擔任副主編,習題部分由孫娟編寫,張虎對本書部分內容做了審定。
由于編者水平有限,書中可能存在疏漏和錯誤,懇請閱讀本書的老師和同學們提出寶貴意見。作者聯系郵箱:dh65@qq.com。
編者
2023年10月
第1章 初識C語言 2
1.1 揭開C語言的神秘面紗 2
1.1.1 一個簡單的C語言程序實例—
加法器 2
1.1.2 什么是計算機語言 2
1.1.3 指令和程序 3
1.1.4 C語言程序的構成 4
1.1.5 加法器的改進版—簡單計算器 5
1.1.6 總結—關于C語言程序結構 7
1.2 C語言的發展 8
實訓項目 11
基礎篇—C語言程序設計基礎知識
第2章 數據類型 14
2.1 常量和變量的含義 15
2.1.1 常量 15
2.1.2 變量 17
2.2 整型變量 18
2.2.1 整型數據在內存中的存儲形式 18
2.2.2 整型變量的分類 19
2.2.3 整型變量的定義和使用舉例 20
2.3 實型變量 21
2.3.1 實型數據在內存中的存儲形式 21
2.3.2 實型變量的分類 21
2.3.3 實型變量的定義和使用舉例 22
2.4 字符型變量 23
2.4.1 字符型數據在內存中的存儲形式 23
2.4.2 字符型變量的定義和使用舉例 23
2.5 類型間的混合運算 25
實訓項目 26
第3章 運算符和表達式 28
3.1 算術運算符和表達式 29
3.1.1 常見的算術運算符 29
3.1.2 自增、自減運算符 29
3.1.3 算術表達式、算術運算符的優先級
和結合性 30
3.1.4 應用案例 31
3.2 賦值運算符和表達式 31
3.2.1 簡單賦值運算符 32
3.2.2 復合賦值運算符 32
3.2.3 賦值表達式及賦值運算符的優先級
和結合性 32
3.3 關系運算符和表達式 33
3.3.1 關系運算符 33
3.3.2 關系表達式及關系運算符的優先級
和結合性 34
3.4 邏輯運算符和表達式 34
3.4.1 邏輯運算符 35
3.4.2 邏輯表達式及邏輯運算符的優先級
和結合性 35
3.5 位運算符和表達式 37
3.5.1 按位與運算符“&” 37
3.5.2 按位或運算符“|” 37
3.5.3 按位異或運算符“^” 38
3.5.4 取反運算符“~” 38
3.5.5 左移運算符“<<” 38
3.5.6 右移運算符“>>” 39
3.5.7 位運算符和賦值運算符 39
3.6 逗號運算符和表達式 40
3.7 求字節數運算符sizeof和強制類型
轉換運算符 40
3.7.1 求字節數運算符sizeof 40
3.7.2 強制類型轉換運算符 41
3.8 運算符小結 42
實訓項目 42
第4章 輸入/輸出函數 44
4.1 輸出函數putchar()和printf() 45
4.1.1 字符輸出函數putchar() 45
4.1.2 格式輸出函數printf() 45
4.2 輸入函數getchar()和scanf() 49
4.2.1 字符輸入函數getchar() 50
4.2.2 格式輸入函數scanf() 50
4.3 輸入/輸出函數使用舉例 52
實訓項目 53
實戰篇—如何編寫C程序
第5章 程序的靈魂—算法簡介 56
5.1 算法的概念和使用舉例 56
5.2 算法的流程圖表示 59
5.2.1 傳統流程圖 59
5.2.2 N-S流程圖 61
實訓項目 63
第6章 結構化程序設計 64
6.1 順序結構程序設計 64
6.2 選擇結構程序設計 65
6.2.1 if語句 66
6.2.2 switch語句 70
6.3 循環結構程序設計 72
6.3.1 while語句 73
6.3.2 do-while語句 74
6.3.3 for語句 75
6.3.4 循環結構程序設計編程實訓:累加器
程序的編寫 77
實訓項目 81
第7章 模塊化程序設計 85
7.1 函數 85
7.1.1 函數的概念 85
7.1.2 函數的分類 86
7.1.3 函數的定義 87
7.1.4 函數的參數 89
7.1.5 函數的返回值和函數的調用 90
7.1.6 函數編程實訓 93
7.2 變量的作用范圍 96
7.3 變量的存儲類別 98
7.3.1 動態存儲方式 98
7.3.2 靜態存儲方式 99
7.4 函數的作用范圍 102
7.5 宏定義和文件包含 102
7.5.1 宏定義 102
7.5.2 文件包含 105
實訓項目 106
提高篇—一些特殊的數據類型
第8章 數組 111
8.1 一維數組 111
8.1.1 一維數組的定義 112
8.1.2 一維數組的初始化 112
8.1.3 一維數組元素的引用 113
8.1.4 一維數組使用實訓 113
8.2 二維數組 115
8.2.1 二維數組的定義 115
8.2.2 二維數組元素的初始化 116
8.2.3 二維數組元素的引用 116
8.2.4 二維數組使用實訓 117
8.3 字符數組 119
8.3.1 字符數組的定義 119
8.3.2 字符數組的初始化 119
8.3.3 字符數組元素的使用 120
8.3.4 字符數組的輸出和輸入 120
8.3.5 常用的字符串處理函數介紹 122
8.4 數組編程實訓 126
實訓項目 130
第9章 指針 134
9.1 指針變量的定義和使用 135
9.1.1 指針變量的定義 135
9.1.2 指針變量的初始化 135
9.1.3 指針變量的使用 136
9.1.4 指針變量使用實訓 140
9.2 指針和一維數組 141
9.2.1 指向數組元素的指針 141
9.2.2 通過指針引用數組元素 142
9.2.3 數組和指針使用實訓 142
9.3 指針和二維數組 144
9.3.1 二維數組元素的地址 144
9.3.2 指向二維數組元素的指針變量 145
9.3.3 指向二維數組的行指針變量 146
9.3.4 二維數組的使用實訓 146
9.4 指針和字符串 147
9.4.1 字符串的地址 148
9.4.2 指向字符串的字符指針變量 148
9.5 幾種特殊的指針類型 149
9.5.1 指針數組 149
9.5.2 指向函數的指針 151
9.5.3 指向指針的指針 153
9.6 指針使用實訓 154
實訓項目 156
第10章 結構體和共用體 161
10.1 結構體 161
10.1.1 結構體類型的定義 162
10.1.2 結構體類型變量的定義 163
10.1.3 結構體變量的使用 164
10.1.4 結構體數組的定義和使用 165
10.1.5 指向結構體類型變量的指針 166
10.2 共用體 168
10.2.1 共用體類型的定義 169
10.2.2 共用體變量的定義和使用 169
實訓項目 170
文件篇—C語言中數據的組織形式
第11章 文件 174
11.1 文件的打開和關閉 175
11.1.1 打開函數fopen() 175
11.1.2 關閉函數fclose() 176
11.2 文件的讀和寫 176
11.2.1 讀函數fread()和fgetc() 176
11.2.2 寫函數fwrite()和fputc() 177
11.3 fprintf()函數和fscanf()函數 178
11.4 文件定位函數rewind()和fseek() 179
11.4.1 rewind()函數 179
11.4.2 fseek()函數 179
11.5 文件使用實訓 180
實訓項目 182
實踐篇—實踐是檢驗理論的標準
實驗1 一個簡單的C程序示例 186
實驗2 輸入/輸出函數的使用 188
實驗3 選擇結構程序設計 189
實驗4 循環結構程序設計 190
實驗5 模塊化程序設計 191
實驗6 一維數組的應用 192
實驗7 二維數組的應用 193
實驗8 字符數組的應用 194
實驗9 指針的簡單應用 195
實驗10 指針的高級應用 196
實驗11 結構體的應用 197
實驗12 文件的應用 198
綜合實訓 199
附錄A 運算符及其結合性 200
附錄B 常用的庫函數 201
參考文獻
- 民航客艙服務實用英語教程 [主編 田靜 徐亞玲]
- 軟考論文高分特訓與范文10篇—信息系統項目管理師(第二版) []
- Python數據分析 [主編 馮志輝 趙磊 李放]
- 大學信息技術 [曾翰穎 編著]
- 大學生創新創業基礎 [主 編 李婷 張玉萍]
- Python程序設計與應用(第二版) [主編 張廣淵]
- 多維視域下的高校籃球教學創新研究 [張利超 李寧 著]
- 創新創業訓練實踐教程 [主編 王日華 陳武 黃喆誠]
- 智能控制導論(第四版) [蔡自興 編著]
- 輸水管線工程風險管理 [張勇 黨亥生 著]
- 民用航空飛機標準線路施工 [主編 王志敏 陳明]
- 不息的水脈—大運河講談錄 [趙珩 著]
- 實用運籌學 [主編 邢育紅 于晉臣]
- 三峽梯級電站水資源決策支持系統研究與開發 [姚華明 潘紅忠 湯正]
- 海南黎族民俗文化鑒賞 [龐國華 著]
- 石墨烯在太赫茲及中紅外頻段電磁器件設計中的應用 [李艷秀 莊華偉 著]
- 電子技術(第二版) [主編 覃愛娜 李飛]
- 辦公自動化高級應用 [陳萍 朱曉玉]
- 信息處理技術員考試32小時通關 [薛大龍]
- 電子產品設計案例教程(微課版)—基于嘉立創EDA(專業版) [王靜 莫志宏 陳學昌 丁紅]
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- Web技術開發教程(基于.NET開源MVC框架) [王合闖 韓紅玲 王青正 陳海蕊]
- 商務英語翻譯教程(筆譯)(第四版) [主編 王軍平]
- 智慧零售技術與應用 [洪旭 著]
- 建設工程法規實務 [主編 余瀅]
- 商務秘書理論與實務(第三版) [主編 張同欽]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 勞動爭議處理實務 [主編 王秀卿 羅靜]