C語言程序設計(第二版)
-
【作 者】主編 丁紅 王輝
【I S B N 】978-7-5170-5690-4
【責任編輯】李炎
【適用讀者群】高職高專
【出版時間】2017-08-14
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第2第1次印刷
【頁 數】212
【千字數】323
【印 張】13.25
【定 價】¥28
【叢 書】高等職業教育“十三五”規劃教材(電子信息課程群)
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書從高職高專的培養目標和學生特點出發,秉承“教學做合一”的原則,以“激發學生學習興趣”為著眼點,認真組織內容、精心設計案例,書中內容淺顯易懂,結構循序漸進,語言生動有趣。
全書共分為六篇,入門篇以形象生動的實例介紹了C語言的基本概念和上機步驟;基礎篇包括基本數據類型、運算符和表達式、輸入/輸出函數;實戰篇介紹了算法的概念和表示,用實例講述了結構化程序設計方法和模塊化程序設計方法;提高篇闡述了幾種特殊的數據類型,包括數組、指針、結構體和共用體;文件篇介紹了文件的使用方法;實踐篇包括與理論內容相配套的實驗。
本書可作為高職高專院校C語言程序設計的教材,也可作為中專院校的教學參考書。
從高職高專的培養目標和學生特點出發,認真組織、精心設計本書內容。
以形象生動的實例介紹了C語言的基本概念和上機步驟。
基礎篇、實戰篇和提高篇部分,以循序漸進的方式學習C語言。
通過文件篇和實踐篇的深入學習,進一步提升C語言程序設計水平。
高等職業技術教育主要是以培養具有職業理想、職業道德,掌握職業技能,知曉職業規范,面向生產、建設、管理、服務第一線需要的高素質技能型人才為目標。
從這個目標出發,高職教育應走校企合作、產學結合的發展之路,這是高職教育人才培養的基本模式。
從這個目標出發,高職院校應采用“教學做一體化”的教學模式。為此必須創建與這一思想相吻合的教材體系。
我國偉大的教育家陶行知先生在七十幾年前就倡導“教學做合一”的思想,他提出學習不應該是單方面的,也不是灌輸的,應該是教與學雙方的,學生是主體,并指出“教學做是一件事,不是三件事。我們要在做上教,在做上學!碧招兄壬f的“做上教、做上學”意指“做中教、做中學”,也就是說讓學生在實踐操作中掌握理論知識,即“先會后懂”,這樣的教學模式更能提高學生的學習興趣,激發學生的學習激情。
C語言是面向過程的編程語言,較之于面向對象的編程語言,語法煩瑣,界面枯燥,對初學者而言,普遍感到難學。為此必須改變傳統的C語言教學內容和教學模式,結合學生更喜歡動手操作的特點,改變過去先講理論,然后進行實際操作的傳統方法,從“教學做合一”的理念出發,采用“做中學”“用中學”“先會后懂”的教學模式,從一個實例出發,讓學生學會如何做,達到“我會了”的效果,然后再講解這樣做的原理,以實現“我懂了”的良好效果。這樣更能激發學生的學習興趣和積極性。正如陶老先生所說“學生有了興味,就肯用全副精神去做事情,所以‘學’和‘樂’是不可分離的!
本書從高職高專的培養目標和學生的特點出發,秉承“教學做一體化”的原則,以“激發學生學習興趣”為著眼點,認真組織內容、精心設計案例,力求淺顯易懂、講夠理論、注重實踐。本書主要具有以下特點:
先進的教學理念:從培養學生的興趣出發,從C語言最基礎的理論入手,教會學生夠用的理論知識。
全新的教學方法:秉承“教學做”相結合的原則,邊學邊做,講練結合,學以致用。
較低的學習門檻:以“問題驅動”為原則出發,導入每個知識點,和操作演練相結合,從而降低了學習C語言的門檻,很容易上手。
快樂的學習方式:書中語言口語化,輕松而又幽默,使學習者能夠帶著快樂的心情學習;案例淺顯易懂,實用價值高,從而增強學習者的成就感和自信心。
本書由丁紅、王輝任主編,王石光、蒙連超、馬書林任副主編,習題部分由孫娟老師編寫,于傲、張宇、邵鮮艷、劉銳同學對本書部分程序進行了調試編譯。
由于編者水平有限,書中可能存在疏漏和錯誤,懇請閱讀本書的老師和同學們提出寶貴意見。作者聯系郵箱:hebiancao65@163.com。
丁 紅
2017年6月
入門篇——帶你認識C語言
第1章 初識C語言 2
1.1 揭開C語言的神秘面紗 2
1.1.1 一個簡單的C語言程序實例
——加法器 2
1.1.2 加法器的改進版——簡單計算器 5
1.1.3 總結——關于C語言程序結構 7
1.2 C語言的發展 8
實訓項目 8
基礎篇——C語言程序設計基礎知識
第2章 數據類型 12
2.1 常量和變量的含義 13
2.1.1 常量 13
2.1.2 變量 15
2.2 整型變量 16
2.2.1 整型數據在內存中的存儲形式 17
2.2.2 整型變量的分類 17
2.2.3 整型變量的定義和使用舉例 18
2.3 實型變量 19
2.3.1 實型數據在內存中的存儲形式 19
2.3.2 實型變量的分類 20
2.3.3 實型變量的定義和使用舉例 20
2.4 字符型變量 21
2.4.1 字符型數據在內存中的存儲形式 21
2.4.2 字符型變量的定義和使用舉例 22
2.5 各類型間的混合運算 23
實訓項目 24
第3章 運算符和表達式 26
3.1 算術運算符和表達式 27
3.1.1 常見的算術運算符 27
3.1.2 自增、自減運算符 27
3.1.3 算術表達式、算術運算符的優先級
和結合性 28
3.2 賦值運算符和表達式 29
3.2.1 簡單賦值運算符 29
3.2.2 復合賦值運算符 29
3.2.3 賦值表達式及賦值運算符的優先級
和結合性 30
3.3 關系運算符和表達式 30
3.3.1 關系運算符 30
3.3.2 關系表達式及關系運算符的優先級
和結合性 31
3.4 邏輯運算符和表達式 31
3.4.1 邏輯運算符 32
3.4.2 邏輯表達式及邏輯運算符的優先級
和結合性 32
3.5 位運算符和表達式 34
3.5.1 “按位與”運算符“&” 34
3.5.2 “按位或”運算符“|” 34
3.5.3 “按位異或”運算符“^” 35
3.5.4 “取反”運算符“~” 35
3.5.5 “左移”運算符“<<” 35
3.5.6 “右移”運算符“>>” 36
3.5.7 位運算符和賦值運算符 36
3.6 逗號運算符和表達式 36
3.7 求字節數運算符sizeof和強制類型轉換
運算符 37
3.7.1 求字節數運算符sizeof 37
3.7.2 強制類型轉換運算符 38
3.8 運算符小結 38
實訓項目 39
第4章 輸入/輸出函數 41
4.1 輸出函數putchar()和printf() 42
4.1.1 字符輸出函數putchar() 42
4.1.2 格式輸出函數printf() 42
4.2 輸入函數getchar()和scanf() 46
4.2.1 字符輸入函數getchar() 47
4.2.2 格式輸入函數scanf() 47
4.3 輸入輸出函數使用舉例 49
實訓項目 50
實戰篇——如何編寫C程序
第5章 程序的靈魂——算法簡介 52
5.1 算法的概念和使用舉例 52
5.2 算法的流程圖表示 55
5.2.1 傳統流程圖 55
5.2.2 N-S流程圖 57
實訓項目 59
第6章 結構化程序設計 60
6.1 順序結構程序設計 60
6.2 選擇結構程序設計 61
6.2.1 if語句 62
6.2.2 switch語句 67
6.3 循環結構程序設計 69
6.3.1 while語句 70
6.3.2 do-while語句 71
6.3.3 for語句 72
6.3.4 循環結構程序設計編程實訓:累加
器程序的編寫 74
實訓項目 77
第7章 模塊化程序設計 81
7.1 函數 81
7.1.1 函數的概念 81
7.1.2 函數的分類 82
7.1.3 函數的定義 83
7.1.4 函數的參數 84
7.1.5 函數的返回值和函數的調用 86
7.1.6 函數編程實訓 88
7.2 變量的作用范圍 92
7.3 變量的存儲類別 94
7.3.1 動態存儲方式 94
7.3.2 靜態存儲方式 95
7.4 函數的作用范圍 97
7.5 宏定義和文件包含 98
7.5.1 宏定義 98
7.5.2 文件包含 101
實訓項目 102
提高篇——一些特殊的數據類型
第8章 數組 108
8.1 一維數組 108
8.1.1 一維數組的定義 109
8.1.2 一維數組的初始化 109
8.1.3 一維數組元素的引用 109
8.1.4 一維數組使用實訓 110
8.2 二維數組 112
8.2.1 二維數組的定義 112
8.2.2 二維數組元素的初始化 112
8.2.3 二維數組元素的引用 113
8.2.4 二維數組使用實訓 114
8.3 字符數組 116
8.3.1 字符數組的定義 116
8.3.2 字符數組的初始化 116
8.3.3 字符數組元素的使用 117
8.3.4 字符數組的輸出和輸入 117
8.3.5 常用的字符串處理函數介紹 119
8.4 數組編程實訓 122
實訓項目 126
第9章 指針 130
9.1 指針變量的定義和使用 130
9.1.1 指針變量的定義 131
9.1.2 指針變量的初始化 131
9.1.3 指針變量的使用 131
9.1.4 指針變量使用實訓 136
9.2 指針和一維數組 136
9.2.1 指向數組元素的指針 136
9.2.2 通過指針引用數組元素 137
9.2.3 數組和指針使用實訓 138
9.3 指針和二維數組 140
9.3.1 二維數組元素的地址 140
9.3.2 指向二維數組元素的指針變量 141
9.3.3 指向二維數組的行指針變量 141
9.3.4 二維數組的使用實訓 142
9.4 指針和字符串 143
9.4.1 字符串的地址 143
9.4.2 指向字符串的字符指針變量 144
9.4.3 字符指針變量使用實訓:字數統計 145
9.5 幾種特殊的指針類型 146
9.5.1 指針數組 146
9.5.2 指向函數的指針 148
9.5.3 指向指針的指針 150
9.6 指針使用實訓 151
實訓項目 153
第10章 結構體和共用體 157
10.1 結構體 157
10.1.1 結構體類型的定義 158
10.1.2 結構體類型變量的定義 159
10.1.3 結構體變量的使用 160
10.1.4 結構體數組的定義和使用 161
10.1.5 指向結構體類型數據的指針 162
10.2 共用體 164
10.2.1 共用體類型的定義 165
10.2.2 共用體變量的定義和使用 165
實訓項目 166
文件篇——C語言中數據的組織形式
第11章 文件 170
11.1 文件的打開和關閉 171
11.1.1 打開函數fopen 171
11.1.2 關閉函數fclose 172
11.2 文件的讀和寫 172
11.2.1 讀函數fread、fgetc 172
11.2.2 輸出函數fwrite、fputc 173
11.3 fprintf函數和fscanf函數 174
11.4 文件定位函數rewind和fseek 175
11.4.1 rewind函數 175
11.4.2 fseek函數 175
11.5 文件使用實訓 176
實訓項目 178
實踐篇——實踐是檢驗理論的標準
實驗1 一個簡單的C程序示例 182
實驗2 輸入輸出函數的使用 184
實驗3 選擇結構程序設計 185
實驗4 循環結構程序設計 186
實驗5 模塊化程序設計 187
實驗6 一維數組的使用 188
實驗7 二維數組的使用 189
實驗8 字符數組的使用 190
實驗9 指針的簡單應用 191
實驗10 指針的高級應用 193
實驗11 結構體的使用 194
實驗12 文件的使用 195
綜合實訓 196
附錄1 運算符及其結合性 197
附錄2 常用的庫函數 198
參考文獻 204
- 實用運籌學 [主編 邢育紅 于晉臣]
- 電子技術(第二版) [主編 覃愛娜 李飛]
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 工程數學 [主編 郭立娟 王海]
- 語音識別理論與實踐 [主編 莫宏偉]
- 武術基礎教程 [主編 李代勇 謝志民]
- 計算機網絡實訓教程 [主編 張浩軍 趙玉娟]
- SwiftUI完全開發 [李智威 著]
- 電工電子技術基礎 [主編 劉 軍 楊國龍 劉天成]
- MySQL數據庫項目式教程 [陳亞峰]
- 機械設計基礎(第二版) [主編 田亞平 李愛姣]
- 畫法幾何與機械制圖 [主編 趙軍]
- C語言程序設計習題與實驗指導(第二版) [主編 甄增榮 張賓]
- C語言程序設計(第二版) [主編 甄增榮 田云霞]
- Unity3D虛擬現實應用開發實踐 [主 編 劉龍]
- 智能化技術基礎(第三版) [鄧文達 李禮]
- Python程序設計 [主編 姜春磊 陳虹潔]
- C語言程序設計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- 面向對象程序設計 [主編 張勇 張平華 趙小龍]
- Python程序設計基礎及實戰 [主編 劉健]
- 網絡營銷 [主編 夏薇薇 劉婷 尚潔]
- C語言程序設計 [姜雪]
- Python程序設計實踐教程 [王鶴琴 蔡正保]
- 電視節目策劃與制作(微課版) [主 編 黃滴滴]
- 數據庫技術與應用實踐教程(SQL Server 2019) [主 編 嚴暉 周肆清]
- C++程序設計實踐教程(第三版) [主編 劉衛國 曹岳輝]
- C++程序設計(第三版) [主編 曹岳輝 劉衛國]