C語言程序設計
-
【作 者】馬學文 謝華成
【I S B N 】978-7-5084-7755-8
【責任編輯】李炎
【適用讀者群】本科
【出版時間】2010-08-01
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】264
【千字數】422
【印 張】16.5
【定 價】¥28
【叢 書】普通高等教育“十一五”規劃教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書以現代C語言為主導,以流行的Visual C++ 6.0為編譯環境,全面介紹了C語言程序設計及經典算法。全書共分10章,內容包括程序設計基礎,數據類型,運算符與表達式,順序結構程序設計,選擇結構程序設計,循環結構程序設計,數組,函數,指針,結構體與共同體和文件處理等。書中所有實例均在Visual C++ 6.0編譯環境下調試通過。
本書結構嚴謹、文筆流暢,例題豐富,分析透徹,文檔規范,將知識傳授與能力訓練相結合,重點培養學生分析問題和解決問題的能力,可以作為高等院校非計算機專業C語言程序設計教材,也可作為計算機應用能力資格考試的輔導材料和程序設計人員的參考書。
1.本書內容全面,編排合理,注意分散難點,便于讀者循序漸進地學習。
2.采用Visual C++ 6.0集成開發環境編譯和調試C程序,引入工作區和工程管理模式,引導讀者以全新觀念接觸C程序設計。
3.針對性強,融入各類C語言考試問題,在分析問題中,培養讀者算法思維習慣,提高讀者程序設計能力。
信息時代需要信息技術,信息技術已與其他學科相互交融,成為推動社會發展的動力。能夠接受高等教育的各專業學生,都必須具備計算機的基礎知識和應用能力。計算機的應用能力已經成為高素質人才的必備要素。
近年來,從事軟件開發和計算機教育的人員發現C語言具有應用面廣,使用靈活方便,表達力強和執行效率高等特點,非常適合程序設計初學者作為入門基礎。熟練掌握C語言的程序設計人員可以快速掌握其他高級語言,因此C語言被計算機專業和非專業應用人員廣泛學習和使用。目前,全國許多高校將“C語言程序設計”作為一門公修計算機基礎課程,同時,全國計算機等級考試以及各地區組織的計算機等級考試都把C語言列入考試范圍。
本書適用于普通本專科高校計算機程序設計基礎教材,可供計算機專業和非專業的C程序設計基礎課教學使用,也適用于程序設計的初學者和想更深入了解C語言的人員使用。在本書編寫過程中,編者將知識講授和能力培養有機結合,在講透徹基礎知識的基礎上,選取了合適的例程,以便讀者加深對基本知識的掌握和理解。內容講述中,注重培養讀者分析問題和程序設計的能力,引導讀者形成程序思維模式和良好的編碼風格。與同類書相比,本書體現了以下特色:
(1)入門門檻低,不要求讀者掌握其他程序設計語言,本教材中的程序設計思想即程序設計基礎。
(2)內容全面,編排合理。在內容編排上,注意分散難點,便于讀者循序漸進地學習。
(3)詳略得當,重點突出。本書主要講解C語言最基本、最常用的內容。
(4)強化實踐,重視應用。本書的講解以C語言的語法、語義為基礎,旨在幫助讀者掌握C語言程序設計的技巧,具備使用程序設計解決實際問題的能力。所以本書結合大學生計算機等級考試,在各章中提供了較多的實例,使讀者能夠深入理解和有效訓練。
(5)本書以Visual C++ 6.0編譯環境為實驗平臺,與Turbo C環境相比,該平臺方便操作、查錯和調試,更重要的是該平臺具有工程化的管理模式,對讀者的成長更為有益。
本書共分10章。第1章介紹程序設計基礎,第2章介紹C語言的數據類型與表達式,第3章介紹順序結構程序設計和編譯預處理,第4章介紹選擇結構程序設計,第5章介紹循環結構程序設計,第6章介紹數組與字符數據處理,第7章介紹函數與程序結構,第8章介紹指針,第9章介紹結構體和共同體,第10章介紹文件處理。
本書由馬學文、謝華成任主編,王新霞、劉琦、李國梁任副主編、其中馬學文編寫了前言,第1章和第6章;謝華成編寫了第8章和第10章;王新霞編寫了第2章和第3章;劉琦編寫了第7章和第9章,李國梁編寫了第4章和第5章,袁曉亞編寫了附錄部分,參與本書編寫的還有謝蕾、周嫄、談靜、秦樂陽、徐現偉、蘇輝、劉坤、陳功平等。
中國水利水電出版社的工作人員為本書的成功出版付出了艱辛的勞動,編者在此對為本書成功出版做出貢獻的所有人員表示衷心的感謝。
由于時間倉促,加上作者水平有限,書中難免存在不足之處,歡迎讀者批評指正。
作 者
2010年7月
第1章 程序設計基礎 1
1.1 程序設計語言的發展 1
1.2 算法與程序設計 1
1.2.1 算法及其表示 1
1.2.2 結構化程序設計與面向對象程序設計 5
1.3 C語言簡介 6
1.3.1 C語言的產生與發展 6
1.3.2 C語言的特點與應用領域 6
1.4 C語言的結構與執行 6
1.4.1 C語言源程序的結構特點 6
1.4.2 高級語言程序的執行過程 7
1.4.3 程序設計的開發期與開發習慣 7
1.5 C語言的運行與調試 9
1.5.1 C程序的執行過程 9
1.5.2 C程序開發的實驗方法 9
1.5.3 Visual C++ 6.0編寫程序與調試
程序的方法 9
習題1 14
第2章 數據類型、運算符與表達式 15
2.1 C語言的數據類型 15
2.1.1 基本數據類型簡介 15
2.1.2 基本數據類型在兩種環境下的表示
(主要是所占字節數及取值范圍) 16
2.2 標識符 16
2.2.1 可用于標識符的字符集 16
2.2.2 標識符的分類 17
2.3 常量 17
2.3.1 整型常量 17
2.3.2 實型常量 19
2.3.3 字符常量 20
2.3.4 字符串常量 21
2.3.5 符號常量與預處理簡介 22
2.4 變量 22
2.4.1 整型變量 23
2.4.2 實型變量 26
2.4.3 字符變量 27
2.5 數據間的混合運算 28
2.5.1 各數據類型轉換規則 28
2.5.2 自動類型轉換與強制轉換 29
2.6 變量賦初值 30
2.7 運算符和表達式 31
2.7.1 C語言運算符簡介與表達式的類型 31
2.7.2 表達式的求值規則 31
2.7.3 算術運算符和算術表達式 31
2.7.4 賦值運算符和賦值表達式 33
2.7.5 逗號運算符和逗號表達式 35
2.7.6 關系運算符和關系表達式 35
2.7.7 邏輯運算符和邏輯表達式 36
2.7.8 條件運算符和條件表達式 38
2.7.9 位運算符和位運算 39
習題2 40
第3章 順序結構程序設計與編譯預處理 42
3.1 C語句概述 42
3.2 賦值語句 44
3.3 賦值表達式與賦值語句的區別 45
3.4 輸入與輸出 46
3.4.1 字符數據的輸入與輸出 46
3.4.2 格式輸入與輸出 49
3.4.3 文件操作中的輸入與輸出簡介 59
3.5 常用函數舉例 59
3.6 編譯預處理 60
3.6.1 宏定義 60
3.6.2 文件包含 62
3.7 順序結構程序設計舉例 63
習題3 64
第4章 選擇結構程序設計 65
4.1 關系運算與邏輯運算 65
4.1.1 關系表達式的應用 65
4.1.2 邏輯表達式的應用 65
4.2 if語句 67
4.2.1 if語句的3種形式 67
4.2.2 if語句的嵌套與{}語句塊的使用 70
4.3 switch語句 73
4.4 應用舉例 76
習題4 83
第5章 循環結構程序設計 84
5.1 goto語句及用goto語句構成的循環 84
5.2 while語句 85
5.3 do...while語句 89
5.4 for語句 92
5.5 幾種循環的比較 97
5.6 循環嵌套 98
5.7 break語句與循環的終止 100
5.8 continue語句 102
5.9 應用舉例 103
習題5 114
第6章 數組 116
6.1 一維數組 116
6.1.1 一維數組的定義 116
6.1.2 一維數組元素的引用 117
6.1.3 一維數組的初始化 117
6.1.4 一維數組程序舉例 118
6.2 二維數組 121
6.2.1 二維數組的定義與存儲 121
6.2.2 二維數組元素的引用 122
6.2.3 二維數組的初始化 123
6.2.4 二維數組程序舉例 123
6.3 字符數組 125
6.3.1 字符數組的定義 125
6.3.2 字符數組的初始化 125
6.3.3 字符串和字符串結束標志 125
6.3.4 字符數組的輸入與輸出 126
6.3.5 字符串處理函數 128
6.3.6 字符數組程序舉例 130
習題6 132
第7章 函數 134
7.1 概述 134
7.2 函數的定義 134
7.3 函數的參數和返回值 135
7.3.1 形式參數和實際參數 135
7.3.2 函數的返回值 136
7.4 函數的調用 137
7.4.1 函數調用的形式和方式 137
7.4.2 被調函數的聲明 138
7.4.3 嵌套調用 139
7.4.4 遞歸調用 140
7.4.5 程序舉例 143
7.5 數組作函數參數 144
7.5.1 數組元素作函數實參 144
7.5.2 數組名作函數參數 145
7.5.3 多維數組名作函數實參 147
7.6 變量的作用域與存儲類別 148
7.6.1 變量的作用域 148
7.6.2 變量的存儲類別 150
7.7 內部函數和外部函數 152
7.7.1 內部函數 152
7.7.2 外部函數 152
7.8 函數應用舉例 152
習題7 154
第8章 指針 155
8.1 地址和指針的概念 155
8.2 變量的指針和指向變量的指針變量 156
8.2.1 指針變量的定義 157
8.2.2 指針變量的基本運算 157
8.2.3 用指針變量作為函數參數 162
8.3 數組的指針和指向數組的指針變量 165
8.3.1 指向數組元素的指針變量 165
8.3.2 通過指針引用數組元素 166
8.3.3 用數組名作為函數參數 170
8.3.4 指向多維數組的指針和指針變量 175
8.4 字符串的指針和指向字符串的指針變量 180
8.4.1 字符串的表示形式 180
8.4.2 對使用字符指針變量與字符
數組的討論 181
8.4.3 用字符指針作為函數參數 183
8.5 函數的指針和指向函數的指針變量 185
8.5.1 用函數指針變量調用函數 185
8.5.2 用指向函數的指針變量作為
函數參數 187
8.6 返回指針值的函數 189
8.7 指針數組和指向指針的指針 191
8.7.1 指針數組的概念 191
8.7.2 指向指針的指針 194
8.7.3 用指針數組作為函數參數 195
8.8 應用舉例 198
習題8 200
第9章 結構體與共用體 201
9.1 結構體 201
9.1.1 結構體類型的定義 201
9.1.2 結構體類型變量的定義 202
9.1.3 結構體變量的引用 204
9.1.4 結構體變量的初始化 204
9.2 結構體數組 206
9.2.1 定義結構體數組 206
9.2.2 結構體數組的初始化 206
9.2.3 結構體數組應用舉例 207
9.3 指向結構體類型數據的指針 208
9.3.1 指向結構體變量的指針 208
9.3.2 指向結構體數組的指針 209
9.3.3 用結構體變量和指向結構體的
指針作為函數參數 210
9.4 用指針處理鏈表 213
9.4.1 鏈表概述 213
9.4.2 處理動態鏈表所需的函數 215
9.4.3 動態鏈表的基本操作 216
9.5 共用體 220
9.5.1 共用體的概念及特征 221
9.5.2 共用體變量的引用方式 222
9.6 枚舉類型 224
9.7 用typedef定義類型 226
9.8 應用舉例 227
習題9 229
第10章 文件 231
10.1 文件概述 231
10.2 文件類型指針 232
10.3 標準文件操作 233
10.3.1 文件的打開和關閉 233
10.3.2 文件的讀/寫 234
10.3.3 文件的定位 242
10.4 文件狀態檢測函數 243
10.5 文件操作應用舉例 243
習題10 246
附錄A 常用ASCII表 247
附錄B C語言中的關鍵字 248
附錄C 運算符和結合性 249
附錄D C庫函數 250
參考文獻 256
- C語言程序設計習題與實驗指導(第二版) [主編 甄增榮 張賓]
- C語言程序設計(第二版) [主編 甄增榮 田云霞]
- C語言程序設計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- C語言程序設計 [姜雪]
- C語言程序設計項目化教程(活頁式) [主編 張利華 潘曉利]
- C語言同步案例習題精解 [主編 肖朝暉]
- C語言程序設計(微課版) [主編 夏啟壽]
- C語言程序設計實踐教程 [夏啟壽]
- 單片機應用技術項目教程(C語言版)(第三版) [主編 郭志勇]
- 數據結構——C語言(微課版) [主編 梁海英]
- C程序設計簡明教程 [黃能耿 黃致遠 編著]
- C語言程序設計實驗指導與實訓 [主編 倪燃]
- 單片機原理及應用技術(C語言版) [周國運 魯慶賓 趙天翔 編著]
- C#程序設計教程 [主編 李祥琴]
- C#數據庫編程技術 [主編 顧家銘]
- 基于C#的可視化編程基礎 [主編 張蕾蕾 黃健]
- C語言程序設計 [主編 楊娟 萬青]
- 物聯網編程與應用(C#) [主編 王浩 王偉旗]
- C語言程序設計 [主編 王婧 劉政宇]
- Visual Basic程序設計教程 [主編 郭秀娟 于全通]
- C語言程序設計項目化教程 [主編 彭琦偉 周威]
- C語言程序設計案例教程 [主 編 劉素芬 張建軍 王宏斌]
- Visual Basic.NET程序設計上機實踐教程 [主編 何振林 羅奕]
- Visual Basic.NET程序設計 [主編 何振林 羅奕]
- C語言程序設計(第二版) [主編 丁紅 王輝]
- 數據結構(C語言版)習題解答及實訓指導 [李根強 謝月娥]
- 數據結構(C語言版) [主編 李根強 劉浩 謝月娥]
- C語言程序設計習題與實驗指導 [主編 甄增榮 張賓]
- C語言程序設計 [主編 甄增榮 呂曉華]
- C語言程序設計 [主編 吳國鳳]