《C語言程式設計(第3版)》是由譚浩強著,2014年清華大學出版社出版的普通高等教育“十一五”國家級規劃教材、高等院校計算機套用技術規劃教材。該教材可作為套用型大學各專業學習C語言程式設計的教材,基礎較好的高職高專也可選用,也可以用於自學的教材。
該教材共10章,主要內容包括:程式設計與C語言,數據的存儲與運算,最簡單的C程式設計——順序程式設計,選擇結構程式設計,循環結構程式設計,利用數組處理批量數據等。
基本介紹
- 書名:C語言程式設計(第3版)
- 作者:譚浩強
- ISBN:9787302369646
- 類別:普通高等教育“十一五”國家級規劃教材
- 頁數:337頁
- 出版社:清華大學出版社
- 出版時間:2014年9月1日
- 裝幀:平裝
- 開本:16開
- 字數:557千字
- CIP核字號:2014135565
成書過程
修訂情況
出版工作
責任編輯 | 封面設計 | 責任校對 | 責任印製 |
---|---|---|---|
謝琛 | 常雪影 | 梁毅 | 李紅英 |
內容簡介
教材目錄
第1章程式設計與C語言1 1.1計算機與程式、程式設計語言1 1.2C語言的出現和發展過程2 1.3簡單的C語言程式2 1.4運行C程式的步驟與方法7 1.4.1運行C程式的步驟7 1.4.2上機運行C程式的方法8 本章小結15 習題16 第2章數據的存儲與運算17 2.1數據在計算機中是怎樣存儲的17 2.1.1數據在計算機中是以二進制形式存儲的17 2.1.2位、位元組和地址18 2.1.3不同類型數據的存儲方式19 2.2整型數據的運算與分析21 2.2.1整型數據運算程式舉例和分析21 2.2.2整型常量與整型變數23 2.3實型數據的運算與分析26 2.3.1實型數據的運算舉例26 2.3.2實型常量的表示形式28 2.3.3實型變數29 2.4字元型數據的運算31 2.4.1字元數據運算的簡單例子31 2.4.2字元常量和字元變數32 2.4.3字元串常量36 2.5符號常量37 2.5.1為什麼要用符號常量 38 2.5.2符號常量的性質和使用方法40 2.6算術運算符和算術表達式41 2.6.1算術運算符41 2.6.2算術表達式43 2.7C運算符和C表達式45 2.7.1C運算符45 2.7.2C表達式46 2.8提高部分46 2.8.1求補碼的方法46 2.8.2整型常量的表示形式47 2.8.3整型變數的類型47 2.8.4整型常量的類型48 2.8.5C語言允許使用的數據類型49 2.8.6運算符的優先權與結合性50 本章小結50 習題51 第3章最簡單的C程式設計——順序程式設計53 3.1算法是程式的靈魂53 3.1.1什麼是算法53 3.1.2怎樣表示算法55 3.2程式的三種基本結構58 3.3C語句綜述59 3.4賦值表達式和賦值語句62 3.4.1賦值表達式62 3.4.2賦值過程中的類型轉換64 3.4.3賦值語句65 3.4.4變數賦初值66 3.5數據輸入輸出的概念67 3.6字元數據的輸入輸出68 3.6.1用putchar函式輸出一個字元69 3.6.2用getchar函式輸入一個字元70 3.7簡單的格式輸入與輸出72 3.7.1用簡單的printf函式輸出數據72 3.7.2用簡單的scanf函式輸入數據76 3.8順序結構程式設計舉例79 3.9提高部分83 3.9.1關於無符號數據與有符號數據之間的賦值83 3.9.2較複雜的輸入輸出格式控制85 3.9.3簡單易用的C++的輸入輸出92 本章小結93 習題94 第4章選擇結構程式設計96 4.1條件判斷96 4.1.1條件判斷的含義96 4.1.2關係運算符和關係表達式97 4.1.3邏輯運算符和邏輯表達式98 4.2用if語句實現選擇結構102 4.2.1用if語句實現選擇結構舉例102 4.2.2if語句的一般形式104 4.2.3if語句使用的說明104 4.2.4使用嵌套的if語句實現多層條判斷106 4.3利用switch語句實現多分支選擇結構110 4.4程式綜合舉例112 4.5提高部分116 4.5.1用條件表達式實現簡單的選擇結構116 4.5.2在程式中使用條件表達式118 本章小結119 習題120 第5章循環結構程式設計123 5.1程式中需要用循環結構123 5.2用while語句和dowhile語句實現循環124 5.2.1用while語句實現循環124 5.2.2用dowhile語句實現循環126 5.3用for 語句實現循環128 5.3.1for語句的一般形式和執行過程128 5.3.2for循環程式舉例 129 5.4循環的嵌套133 5.5提前結束循環133 5.5.1用break語句提前退出循環 133 5.5.2用continue語句提前結束本次循環135 5.6幾種循環的比較137 5.7循環程式綜合舉例137 5.8提高部分142 5.8.1while和dowhile循環的比較142 5.8.2for語句的各種形式143 本章小結147 習題147 第6章利用數組處理批量數據149 6.1為什麼要用數組149 6.2怎樣定義和引用一維數組149 6.2.1怎樣定義一維數組150 6.2.2怎樣引用一維數組的元素150 6.2.3一維數組的初始化152 6.2.4一維數組程式舉例153 6.3怎樣定義和引用二維數組156 6.3.1怎樣定義二維數組 156 6.3.2怎樣引用二維數組的元素157 | 6.3.3二維數組的初始化157 6.3.4二維數組程式舉例159 6.4字元數組162 6.4.1怎樣定義字元數組及對其初始化 162 6.4.2怎樣引用字元數組163 6.4.3字元串和字元串結束標誌164 6.4.4怎樣進行字元數組的輸入輸出166 6.4.5字元串處理函式168 6.4.6字元數組套用舉例169 6.5提高部分173 6.5.1為什麼在定義二維數組時採用兩對雙括弧的 形式173 6.5.2對C的字元串函式的詳細說明174 本章小結178 習題179 第7章用函式實現模組化程式設計181 7.1函式是什麼181 7.2函式的定義和調用184 7.2.1為什麼要定義函式184 7.2.2怎樣定義函式184 7.2.3怎樣調用函式185 7.2.4對被調用函式的聲明和函式原型188 7.3函式的嵌套調用和遞歸調用191 7.3.1函式的嵌套調用191 7.3.2函式的遞歸調用193 7.4數組作為函式參數199 7.4.1用數組元素作函式實參199 7.4.2用數組名作函式參數200 7.5變數的作用域和生存期207 7.5.1變數的作用域——局部變數和全局變數207 7.5.2變數的存儲方式和生存期210 7.5.3關於作用域和生存期的小結214 7.6內部函式和外部函式215 7.6.1什麼是內部函式215 7.6.2什麼是外部函式215 7.7提高部分218 7.7.1實參求值的順序218 7.7.2遞歸的典型例子——Hanoi(漢諾)塔問題218 本章小結221 習題223 第8章善於使用指針 225 8.1什麼是指針225 8.2指針變數226 8.2.1使用指針變數訪問變數的例子226 8.2.2怎樣定義指針變數228 8.2.3怎樣引用指針變數229 8.2.4指針變數作為函式參數231 8.3通過指針引用數組236 8.3.1數組元素的指針236 8.3.2通過指針引用數組元素237 8.3.3用數組名作函式參數241 8.4通過指針引用字元串246 8.4.1字元串的表示形式246 8.4.2字元指針作函式參數250 8.4.3使用字元指針變數和字元數組的區別254 8.5提高部分257 8.5.1指針使用的技巧257 8.5.2多維數組的指針259 8.5.3指向函式的指針260 8.5.4返回指針值的函式260 8.5.5指針數組261 8.5.6多重指針——指向指針的指針262 本章小結263 習題265 第9章使用結構體類型處理組合數據——用戶自定義數據類型267 9.1定義和使用結構體變數267 9.1.1自己建立結構體類型267 9.1.2定義結構體類型變數269 9.1.3結構體變數的初始化和引用271 9.2結構體數組275 9.3結構體指針278 9.4用結構體變數和結構體變數的指針作函式參數282 9.5用指針處理鍊表285 9.5.1什麼是線性鍊表285 9.5.2建立簡單的靜態鍊表286 9.5.3建立動態鍊表287 9.6提高部分289 9.6.1共用體類型289 9.6.2枚舉類型290 本章小結293 習題294 第10章利用檔案保存數據295 10.1C檔案的有關概念295 10.1.1什麼是檔案295 10.1.2檔案名稱296 10.1.3檔案的分類296 10.1.4檔案緩衝區297 10.1.5檔案指針297 10.2檔案的打開與關閉298 10.2.1用fopen函式打開數據檔案298 10.2.2用fclose函式關閉檔案300 10.3檔案的順序讀寫300 10.3.1向檔案讀寫字元301 10.3.2向檔案讀寫一個字元串304 10.3.3檔案的格式化讀寫308 10.3.4用二進制方式讀寫檔案308 10.4檔案的隨機讀寫312 10.4.1檔案位置標記及其定位313 10.4.2隨機讀寫檔案315 10.5提高部分317 10.5.1系統定義的檔案指針317 10.5.2回車換行符的轉換317 10.5.3fread和fwrite函式用於二進制檔案的輸入 輸出318 10.5.4檔案讀寫的出錯檢測318 本章小結319 習題320 附錄A常用字元與ASCII代碼對照表322 附錄BC語言中的關鍵字323 附錄C運算符和結合性324 附錄DC語言常用語法提要326 附錄EC庫函式331 參考文獻337 |
教學資源
- 配套教材
書名 | 書號 | 出版社 | 出版時間 | 作者 |
---|---|---|---|---|
《C語言程式設計(第3版)學習輔導》 | 9787302370574 | 清華大學出版社 | 2014.09.01 | 譚浩強 |
- 課程資源
教材特色
- 該教材保持第2版的特點和風格,基本上保留原書的體系;
- 按照C99標準進行介紹,以適應C語言的發展,使編寫程式更加規範;
- 加強算法,強化解題思路;在介紹例題時,先進行問題分析,探討解題思路,構造算法,然後才是根據算法編寫程式,而不是先列出程式再解釋程式;在各章中結合例題介紹各種典型的算法;對窮舉、遞推、疊代、遞歸、排序(包括比較交換法、選擇法、起泡法)、矩陣運算、字元處理套用等算法作了介紹,對難度較大的鍊表操作的算法作了思路說明;
- 作者考慮到初學者的情況,設計體系,適當降低門檻;少用深奧難懂的專業術語,用通俗易懂的方法和語言闡述複雜的概念,使複雜的問題簡單化;
- 該教材採用作者提出的“提出問題——解決問題——歸納分析”的新的教學三部曲,先具體後抽象,先實際後理論,先個別後一般;而不是先抽象後具體,先理論後實際,先一般後個別;
- 把教學內容分為基本要求和提高要求兩個部分;這是考慮到不同對象的要求的差別,在各章中把一部分較深入的內容作為“提高部分”,單獨列出,放在各章的最後;如果學時不夠,可以只學基本部分。通過學習基本部分,能初步掌握C程式設計的基本內容,寫出相對簡單的程式,如果希望學習得更深入一些,掌握更多的編程思路和技巧,可以選學各章的“提高部分”。