C語言程序設計
-
【作 者】主編 羊四清 易葉青
【I S B N 】978-7-5084-9368-8
【責任編輯】周益丹
【適用讀者群】本科
【出版時間】2012-01-12
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】272
【千字數】429
【印 張】17
【定 價】¥29.8
【叢 書】普通高等教育“十二五”規劃教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書是面向高等學校“C語言程序設計課程”而編寫的教材。在內容組織上以程序設計為中心,對C語言的知識結構進行了調整。全書分為9章,主要內容包括:C語言概述及程序設計基礎、簡單的C語言編程、選擇結構程序設計、循環結構程序設計、數組、函數、結構體與共用體、指針和文件。本書內容全面,概念清楚,結構合理,敘述深入淺出,邏輯性強,程序案例生動易懂,所有程序均在Visual C++ 6.0開發環境中進行了嚴格的測試。每章均配備學習目標、小結和精心設計的習題,以方便讀者掌握重點和難點。
本書可作為高等學校各專業程序設計基礎教學的教材,尤其適合應用型本科、高職院校的計算機及非計算機專業的學生使用,同時也可作為編程人員和C語言自學者的參考用書。
本書所配電子教案及相關教學資源可以從中國水利水電出版社網站和萬水書苑上下載,網址為:http://www.waterpub.com.cn/softdown/和http://www.dgboyong.cn。
◆以培養程序設計能力為目標,對C語言知識體系做出合理規劃,在章節內容安排上與以往教材有較大的區別
◆資深高級程序員和一線教師參與編寫,精心設計教材內容,文字通俗易懂,語法描述簡潔,可讀性強
◆程序案例緊扣主題,選題恰當,內容豐富,涉及面廣,適合不同層次的讀者使用
◆所有例題、實驗、課程設計的源程序均在Visual C++ 6.0下調試通過
◆配套《C語言程序設計實驗與實訓教程》精選實驗與課程設計案例,以提高讀者對C語言程序設計綜合運用能力
◆ 提供相關教學資源(案例程序源代碼、ppt、習題答案)的免費下載
C語言由美國貝爾研究所的D.M.Ritchie于1972年推出。1978后,C語言已先后被移植到大、中、小及微型機上。C語言是國際上廣泛流行的計算機程序設計語言,它具有簡潔緊湊、運算能力強、結構化、目標程序質量高、可移植性好、使用靈活方便等特點,既具有高級語言的優點,又具有匯編語言的某些特點,能夠有效地用來編制各種系統軟件和應用軟件。同時,C語言的控制結構簡明清晰,是非常適合進行結構化程序設計的一種計算機語言。因此,目前國內大部分高等院校都把C語言作為計算機和非計算機相關專業的一門程序設計語言課程。
本書的主要特點是以現代C語言標準ANSI C為主導,以成熟的Visual C++ 6.0為編譯環境,全面介紹了C語言的基本理論、基本知識以及編程的基本技能和方法;針對初學者的特點,本書內容全面,概念清楚,結構合理,敘述深入淺出,邏輯性強,程序案例生動易懂。書中采用了大量與實際問題緊密結合的例題貫穿整個過程,實用性強;針對典型例題提供了舉一反三的練習題,注重培養遷移知識的能力;每章前面有學習目標,后面有對本章知識點的總結和習題,有助于讀者抓住本章重點和難點,深入鞏固和掌握所學知識。
全書共9章,主要內容包括:C語言概述與程序設計基礎、簡單C語言編程、選擇結構程序設計、循環結構程序設計、數組、函數、結構體與共用體、指針、文件。書中對數組、函數、指針、結構體和共用體、文件等重點和難點的內容進行了深入分析和探討,配備了大量的案例來加深對知識點的了解和掌握。
“C語言程序設計”課程作為程序設計的入門課程,本書重視C語言基本概念、語法規則和程序設計基本方法的講解,力求使讀者掌握結構化程序設計的基本方法,具有良好的編程思路和風格,有利于提高讀者進一步學習后續知識的能力。
本書第1~2章由羅如為編寫,第3章由闕清賢編寫,第4章由唐海波編寫,第5章由袁輝勇編寫;第6章和第8章由羊四清編寫。第7章由易葉青編寫,第9章由賀文華編寫。還有劉永逸、劉偉群和彭智朝等老師對本書的編寫給出了寶貴的意見,在此一并表示感謝。
由于編者水平有限,書中難免存在一些缺點和錯誤,懇請各位專家和讀者批評指正。
編 者
2012年1月
第1章 C語言概述及程序設計基礎 1
1.1 C語言的發展及特點 1
1.1.1 C語言的發展 1
1.1.2 C語言的特點 1
1.2 C語言程序的基本結構 2
1.2.1 C語言程序的基本結構 2
1.2.2 C語言的關鍵字 4
1.3 編譯預處理 5
1.3.1 宏定義 5
1.3.2 文件包含 10
1.3.3 條件編譯 10
1.4 程序設計基礎 12
1.4.1 算法概念 12
1.4.2 算法的表示 13
1.4.3 程序的三種基本結構 15
1.4.4 程序的書寫風格和書寫格式 16
1.5 Visual C++ 6.0編程環境 17
1.6 本章小結 21
習題一 22
第2章 簡單的C語言編程 24
2.1 標識符 24
2.1.1 字符集 24
2.1.2 標識符概述 24
2.1.3 標識符分類 25
2.2 C語言的數據類型 26
2.2.1 數據類型的概念與分類 26
2.2.2 數據類型的作用 27
2.2.3 整型數據 27
2.2.4 實型數據 30
2.2.5 字符型數據 32
2.3 常量與變量 34
2.3.1 常量 34
2.3.2 符號常量 35
2.3.3 變量 35
2.3.4 變量的初始化 35
2.4 C語言語句 36
2.4.1 C語句概述 36
2.4.2 語句分類 37
2.5 表達式與賦值語句 38
2.5.1 運算符 38
2.5.2 表達式 42
2.5.3 賦值語句 42
2.5.4 類型轉換 43
2.6 位運算 44
2.6.1 位運算符與位運算 44
2.6.2 位域 47
2.7 格式化輸入與輸出 49
2.7.1 格式化輸出 49
2.7.2 格式化輸入 52
2.8 字符數據的輸入與輸出 54
2.8.1 字符輸出 54
2.8.2 字符輸入 55
2.9 本章小結 55
習題二 56
第3章 選擇結構程序設計 59
3.1 關系運算符和關系表達式 59
3.1.1 關系運算符及其優先級 59
3.1.2 關系表達式 59
3.2 邏輯運算符及邏輯表達式 60
3.2.1 邏輯運算符及其優先級 60
3.2.2 邏輯表達式 61
3.3 條件運算符與條件表達式 62
3.3.1 條件運算符及其優先級 62
3.3.2 條件表達式 62
3.4 if語句 63
3.4.1 簡單if語句 63
3.4.2 雙分支if語句 64
3.4.3 多分支if語句 65
3.4.4 if語句使用說明 66
3.5 switch語句 66
3.6 選擇結構的嵌套 69
3.7 應用舉例 73
3.8 本章小結 74
習題三 74
第4章 循環結構程序設計 77
4.1 概述 77
4.2 while語句 77
4.3 do…while語句 79
4.4 for語句 80
4.5 三種循環語句的比較 83
4.6 改變循環執行的狀態 84
4.6.1 break語句 84
4.6.2 continue語句 85
4.6.3 break語句和continue語句的區別 86
4.7 多重循環 87
4.8 應用舉例 89
4.9 本章小結 92
習題四 92
第5章 數組 95
5.1 數組和數組元素 95
5.2 一維數組 95
5.2.1 一維數組的定義和引用 96
5.2.2 一維數組的初始化 97
5.2.3 一維數組應用舉例 97
5.3 二維數組 101
5.3.1 二維數組的定義與引用 101
5.3.2 二維數組的初始化 102
5.3.3 二維數組應用舉例 103
5.4 字符數組 106
5.4.1 字符數組的定義與引用 107
5.4.2 字符數組的初始化 107
5.4.3 字符數組的輸入和輸出 108
5.4.4 字符處理函數 110
5.4.5 字符數組應用舉例 113
5.5 本章小結 114
習題五 114
第6章 函數 116
6.1 模塊化程序設計 116
6.1.1 模塊化程序設計概述 116
6.1.2 函數概述 117
6.2 函數的分類與定義 118
6.2.1 函數的分類 118
6.2.2 函數的定義 118
6.3 函數的調用與執行 120
6.3.1 函數的調用 120
6.3.2 函數說明語句 122
6.3.3 函數的參數與參數傳遞 123
6.3.4 函數的返回值 124
6.3.5 函數的執行 125
6.4 數組作為函數參數 125
6.4.1 數組元素作函數參數 125
6.4.2 數組名作為函數參數 126
6.5 函數的嵌套調用與遞歸調用 129
6.5.1 函數的嵌套調用 129
6.5.2 函數的遞歸調用 131
6.6 變量的作用域 135
6.6.1 局部變量 135
6.6.2 全局變量 137
6.7 變量的存儲類別 139
6.7.1 變量的存儲方式 139
6.7.2 變量的存儲類別 140
6.8 內部函數和外部函數 144
6.8.1 內部函數 144
6.8.2 外部函數 144
6.9 應用舉例 146
6.10 本章小結 149
習題六 149
第7章 結構體與共用體 151
7.1 結構體類型及變量的定義 151
7.1.1 結構體概述 151
7.1.2 結構體類型的定義 151
7.1.3 結構體變量的定義 152
7.2 結構體變量的初始化和引用 153
7.2.1 結構體變量的引用 153
7.2.2 結構體變量的初始化 154
7.3 結構體數組 155
7.3.1 結構體數組的定義 155
7.3.2 結構體數組的初始化 155
7.3.3 結構體數組的應用 156
7.4 共用體 157
7.4.1 共用體的概念 157
7.4.2 共用體變量的定義 158
7.4.3 共用體變量的引用 159
7.4.4 共用體類型數據的特點 159
7.4.5 共用體變量的應用 160
7.5 枚舉類型 161
7.5.1 枚舉類型的定義和枚舉變量的
說明 161
7.5.2 枚舉類型變量的賦值和使用 162
7.6 用typedef定義用戶自定義類型 163
7.7 本章小結 164
習題七 165
第8章 指針 166
8.1 指針的定義 166
8.1.1 地址與變量的地址 166
8.1.2 指針與指針變量 167
8.2 指針變量的定義和使用 169
8.2.1 指針變量的定義 169
8.2.2 指針變量的賦值 170
8.2.3 指針變量的運算 171
8.2.4 指針變量的進一步說明 176
8.3 指針與數組 177
8.3.1 指向數組元素的指針變量 177
8.3.2 指向數組的指針 181
8.3.3 指針數組 185
8.4 指針與字符串 186
8.4.1 字符串的表示 187
8.4.2 字符串指針變量 187
8.4.3 字符串指針變量與字符數組的
區別 188
8.4.4 用指針數組表示字符串組 189
8.5 指針變量作為函數參數 190
8.5.1 形參是指針變量,實參是變量的
地址 190
8.5.2 形參是指針變量,實參是指針
變量 193
8.5.3 數組或指針變量作為函數的參數 195
8.5.4 指針數組作為函數的參數 199
8.6 指向函數的指針變量與指針型函數 200
8.6.1 指向函數的指針變量 200
8.6.2 指針型函數 201
8.7 二重指針與帶參數的main函數 202
8.7.1 二重指針與指針數組的關系 202
8.7.2 main函數的參數 204
8.8 結構指針變量的說明和使用 206
8.8.1 指向結構變量的指針 206
8.8.2 指向結構數組元素的指針 207
8.8.3 結構指針變量作函數參數 209
8.9 動態存儲分配與鏈表 210
8.9.1 動態存儲分配 210
8.9.2 鏈表的概念與表示 212
8.9.3 鏈表的操作 213
8.10 應用舉例 217
8.11 本章小結 221
習題八 222
第9章 文件 223
9.1 C文件的概念 223
9.1.1 文件與文件名 223
9.1.2 文件分類 224
9.1.3 文件緩沖區 225
9.1.4 文件類型指針 226
9.2 打開與關閉文件 227
9.2.1 fopen函數 227
9.2.2 fclose函數 229
9.3 順序讀寫文件數據 230
9.3.1 讀寫字符函數fgetc和fputc 230
9.3.2 讀寫字符串函數fgets和fputs 233
9.3.3 格式化讀寫函數fscanf和fprintf 236
9.3.4 讀寫塊數據函數fread和fwrite 238
9.4 隨機讀寫文件數據 239
9.4.1 文件讀寫位置定位 240
9.4.2 隨機讀寫函數 240
9.5 文件檢測函數 241
9.5.1 文件結束檢測函數 241
9.5.2 讀寫文件出錯檢測函數 242
9.5.3 文件出錯標志和文件結束標志置0
函數 242
9.6 應用舉例 242
9.7 本章小結 246
習題九 247
附錄A ASCII表(American Standard Code for
Information Interchange) 251
附錄B C語言的保留字 253
附錄C C語言運算符和結合性 254
附錄D C語言常用語法提要 256
附錄E C語言常用庫函數 258
參考文獻 264
- 實用運籌學 [主編 邢育紅 于晉臣]
- 電子技術(第二版) [主編 覃愛娜 李飛]
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- 勞動爭議處理實務 [主編 王秀卿 羅靜]
- 語音識別理論與實踐 [主編 莫宏偉]
- 武術基礎教程 [主編 李代勇 謝志民]
- 畫法幾何與機械制圖習題集(多學時) [主編 趙軍]
- SwiftUI完全開發 [李智威 著]
- MySQL數據庫項目式教程 [陳亞峰]
- 機械設計基礎(第二版) [主編 田亞平 李愛姣]
- 畫法幾何與機械制圖 [主編 趙軍]
- C語言程序設計習題與實驗指導(第二版) [主編 甄增榮 張賓]
- C語言程序設計(第二版) [主編 甄增榮 田云霞]
- Unity3D虛擬現實應用開發實踐 [主 編 劉龍]
- Python程序設計 [主編 姜春磊 陳虹潔]
- C語言程序設計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- 面向對象程序設計 [主編 張勇 張平華 趙小龍]
- Python程序設計基礎及實戰 [主編 劉健]
- 網絡營銷 [主編 夏薇薇 劉婷 尚潔]
- C語言程序設計 [姜雪]
- Python程序設計實踐教程 [王鶴琴 蔡正保]
- 數據庫技術與應用實踐教程(SQL Server 2019) [主 編 嚴暉 周肆清]
- C++程序設計實踐教程(第三版) [主編 劉衛國 曹岳輝]
- C++程序設計(第三版) [主編 曹岳輝 劉衛國]
- C語言程序設計項目化教程(活頁式) [主編 張利華 潘曉利]
- 機器人流程自動化(RPA)實戰——基于UiPath [主編 金鑫]
- 功能材料制備與表征實驗指導書 [龔偉平 趙軍峰 梅海娟 等編著]