C語言程序設計

-
【作 者】主編 王婧 劉政宇
【I S B N 】978-7-5170-6942-3
【責任編輯】張玉玲
【適用讀者群】本專通用
【出版時間】2018-09-01
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】292
【千字數】446
【印 張】18.25
【定 價】¥42
【叢 書】普通高等教育“十三五”規劃教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書是普通應用型本科院校C語言程序設計教材。全書共分10章:C語言概述,數據類型、運算符與表達式,順序結構程序設計,選擇結構程序設計,循環結構程序設計,函數,數組,結構體與共用體,指針,文件。本書知識描述簡潔,例題典型豐富,知識講授和能力訓練并重,為任課教師提供電子課件、習題答案、例題源代碼和實驗報告等教學資源。
本書既可作為計算機、信息、電子類相關專業教材,也可作為程序設計人員的參考書。
注重可讀性和可用性,難點分散,用易于理解的方式清楚地敘述復雜的概念體系合理、邏輯清晰、例題豐富、通俗易懂。
遵循知識講授和能力訓練并重的原則,在講清基本知識的基礎上,注意例題的選擇,增加例題的數量和類型。
講解力求理論聯系實際和循序漸進,注重培養讀者分析問題和程序設計的能力,使讀者養成良好的程序設計風格和習慣。
C語言是目前非常流行、使用廣泛的高級程序設計語言。在對操作系統、系統應用及需要對硬件進行操作的場合中,用C語言明顯優于其他高級語言,因此許多大型應用軟件都是用C語言編寫的。C語言功能強大、使用靈活、可移植性好、目標程序質量好,因此受到編程者的廣泛歡迎。
本書是一本適用于普通高等院校,尤其是側重于應用能力培養的應用型本科院校的計算機程序設計基礎教材,可供C語言程序設計基礎課教學使用,也適合程序設計初學者使用。與同類書相比,本書注重可讀性和可用性,并且難點分散,用人們易于理解的方式清楚地敘述復雜的概念,具有體系合理、邏輯清晰、例題豐富、通俗易懂的特點。在編寫過程中,作者遵循知識講授和能力訓練并重的原則,在講清基本知識的基礎上,注意例題的選擇,增加例題和習題的數量與類型;講述中力求理論聯系實際和循序漸進,注重培養讀者分析問題和程序設計的能力,使讀者養成良好的程序設計風格和習慣。
程序設計是一門實踐性很強的課程,不可能僅靠聽課和看書就能掌握C語言程序設計,因此應當十分重視動手編寫程序和上機運行程序能力的培養。學習C語言時,應該注意把精力放在最基本、最常用的內容上。開始時不要鉆牛角尖,在一些細節上不要死摳,因為以后會隨著對C語言了解的逐步深入和實踐經驗的逐步豐富,自然而然地掌握其內容,而且有一些細節確實需要通過長期的實踐才能真正熟練掌握。本書的宗旨是不僅要使讀者掌握C語言本身,而且要能夠對現實世界中較簡單的問題和解決方案用C語言進行描述。當然,要能夠描述較復雜的問題,還需要學習數據結構、面向對象的軟件工程等其他課程。
本書共分10章:C語言概述,數據類型、運算符與表達式,順序結構程序設計,選擇結構程序設計,循環結構程序設計,函數,數組,結構體與共用體,指針,文件。
本書由王婧、劉政宇主編,溫海洋主審,呂志峰、黃磊、宋毅、翟霞、方海諾、孫海龍、趙建新,于曉婷、高輝、王家寧、蔣東玉等參加編寫。
由于編者水平有限,書中疏漏甚至錯誤之處在所難免,懇請讀者批評指正,郵件請發至hithdwj@126.com。
第1章 C語言概述 1
1.1 C語言的發展歷史及特點 1
1.1.1 C語言的發展歷史 1
1.1.2 C語言的特點 2
1.2 簡單的C程序介紹 2
1.2.1 C語言程序的結構特點 4
1.2.2 書寫程序時應遵循的規則 4
1.2.3 C語言詞匯 5
1.3 程序開發周期 6
1.3.1 創建源代碼 6
1.3.2 編譯源代碼 7
1.3.3 鏈接以創建可執行文件 7
1.3.4 運行可執行程序 7
1.4 C程序的上機步驟 8
1.4.1 Code::Blocks簡介 8
1.4.2 用Code::Blocks 12.11運行C程序
的步驟 9
1.5 本章小結 11
習題1 11
第2章 數據類型、運算符與表達式 13
2.1 C語言的數據類型 13
2.2 標識符 14
2.3 常量 15
2.3.1 整型常量 15
2.3.2 實型常量 16
2.3.3 字符常量 17
2.3.4 字符串常量 19
2.3.5 符號常量 19
2.4 變量 20
2.4.1 整型變量 20
2.4.2 實型變量 24
2.4.3 字符變量 25
2.4.4 枚舉變量 26
2.5 變量賦初值 29
2.6 各類數值型數據之間的混合運算 29
2.7 運算符和表達式 30
2.7.1 C語言運算符簡介 30
2.7.2 算術運算符和算術表達式 31
2.7.3 賦值運算符和賦值表達式 34
2.7.4 關系運算符和關系表達式 35
2.7.5 邏輯運算符和邏輯表達式 36
2.7.6 條件運算符和條件表達式 38
2.7.7 逗號運算符和逗號表達式 39
2.8 位運算 39
2.8.1 按位與運算 40
2.8.2 按位或運算 40
2.8.3 按位異或運算 41
2.8.4 求反運算 41
2.8.5 左移運算 41
2.8.6 右移運算 41
2.8.7 位域(位段) 42
2.9 本章小結 44
習題2 45
第3章 順序結構程序設計 48
3.1 C語句概述 48
3.2 賦值語句 49
3.3 輸入/輸出函數 50
3.3.1 字符數據的輸入輸出 51
3.3.2 格式輸入與輸出 52
3.4 結構化程序設計思想 60
3.4.1 結構化程序設計的方法 60
3.4.2 程序設計的步驟 60
3.4.3 程序設計的風格 61
3.4.4 結構化程序設計的工具 61
3.4.5 結構化程序設計的三種基本結構 64
3.5 順序結構程序設計舉例 64
3.6 本章小結 65
習題3 65
第4章 選擇結構程序設計 68
4.1 if語句 68
4.1.1 if語句的三種形式 68
4.1.2 在使用if語句時應注意的問題 74
4.1.3 if語句的嵌套 76
4.2 switch語句 82
4.3 選擇結構程序設計舉例 86
4.4 本章小結 89
習題4 89
第5章 循環結構程序設計 94
5.1 while語句 94
5.2 do…while語句 96
5.3 for語句 99
5.4 循環的嵌套 104
5.5 程序跳轉語句 107
5.5.1 break語句 107
5.5.2 continue語句 110
5.5.3 exit()函數 111
5.6 程序應用舉例 112
5.7 本章小結 115
習題5 115
第6章 函數 121
6.1 函數的概念及分類 121
6.1.1 函數的概念及特性 121
6.1.2 函數的分類 125
6.2 函數的定義 125
6.3 函數的參數和返回值 126
6.3.1 函數的參數 126
6.3.2 函數的返回值 129
6.4 函數的調用 129
6.4.1 函數調用的一般形式 129
6.4.2 函數調用的方式 129
6.4.3 被調用函數的聲明和函數原型 131
6.5 函數的嵌套調用 133
6.6 函數的遞歸調用 136
6.7 局部變量和全局變量 140
6.7.1 局部變量 140
6.7.2 全局變量 142
6.8 變量的存儲類型 143
6.8.1 動態存儲方式與靜態存儲方式 143
6.8.2 auto變量 143
6.8.3 靜態局部變量 144
6.8.4 寄存器變量 146
6.8.5 用extern聲明外部變量 147
6.9 內部函數和外部函數 148
6.9.1 內部函數 148
6.9.2 外部函數 148
6.10 函數設計舉例 149
6.11 綜合應用舉例 152
6.12 本章小結 154
習題6 154
第7章 數組 159
7.1 一維數組的定義和引用 159
7.1.1 一維數組的定義 159
7.1.2 數組元素的引用 160
7.1.3 一維數組的初始化 161
7.1.4 一維數組程序舉例 162
7.2 二維數組的定義和引用 165
7.2.1 二維數組的定義 165
7.2.2 二維數組中元素的引用 166
7.2.3 二維數組的初始化 167
7.2.4 二維數組程序舉例 167
7.3 字符數組 169
7.3.1 字符數組的定義 169
7.3.2 字符數組的初始化 170
7.3.3 字符數組的引用 170
7.3.4 字符串 171
7.3.5 字符數組的輸入/輸出 172
7.3.6 字符串處理函數 173
7.3.7 字符數組應用舉例 175
7.4 數組作為函數參數 177
7.5 數組程序舉例 183
7.6 數組應用舉例 186
7.7 本章小結 188
習題7 188
第8章 結構體與共用體 191
8.1 結構體 191
8.1.1 結構體概述 191
8.1.2 結構體變量的定義 192
8.1.3 結構體變量的引用 194
8.1.4 結構體變量的初始化 195
8.2 結構體數組 196
8.3 結構體類型指針 199
8.3.1 指向結構體變量的指針 199
8.3.2 指向結構體數組的指針 201
8.3.3 結構指針作為函數參數 202
8.4 動態內存分配 205
8.4.1 動態存儲分配函數 205
8.4.2 鏈表的概念 207
8.5 共用體 211
8.6 類型定義 215
8.7 應用舉例 216
8.8 本章小結 219
習題8 219
第9章 指針 223
9.1 指針變量 223
9.1.1 指針的概念 223
9.1.2 指針變量的定義 224
9.1.3 指針運算符 224
9.1.4 指針變量作為函數參數 228
9.1.5 指針變量的運算 230
9.2 指針與數組 233
9.2.1 指向數組元素的指針變量 233
9.2.2 通過指針引用數組元素 233
9.2.3 數組名作為函數參數 236
9.2.4 多維數組的指針 241
9.3 字符串與指針 243
9.3.1 字符串的表現形式 243
9.3.2 字符串指針作為函數參數 245
9.3.3 字符指針變量與字符數組的區別 247
9.4 函數與指針 248
9.4.1 函數指針 248
9.4.2 用函數指針調用函數 249
9.4.3 返回指針值的函數 250
9.5 指針數組和指向指針的指針 251
9.5.1 指針數組 251
9.5.2 指向指針的指針 253
9.5.3 命令行參數 255
9.6 常見錯誤 257
9.7 本章小結 258
習題9 259
第10章 文件 263
10.1 文件概述 263
10.2 文件基本操作 264
10.2.1 文件指針 264
10.2.2 文件的打開 264
10.2.3 文件的關閉 266
10.3 文件的讀寫 266
10.3.1 fputc函數 266
10.3.2 fgetc函數 267
10.3.3 fputs函數 268
10.3.4 fgets函數 268
10.3.5 fprintf函數 269
10.3.6 fscanf函數 270
10.3.7 fread函數和fwrite函數 270
10.4 文件的定位 272
10.4.1 fseek函數 273
10.4.2 rewind函數 274
10.4.3 ftell函數 274
10.5 預處理 276
10.5.1 宏定義 276
10.5.2 文件包含 277
10.5.3 條件編譯 279
10.6 本章小結 280
習題10 280
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- SwiftUI完全開發 [李智威 著]
- MySQL數據庫項目式教程 [陳亞峰]
- C語言程序設計習題與實驗指導(第二版) [主編 甄增榮 張賓]
- C語言程序設計(第二版) [主編 甄增榮 田云霞]
- Unity3D虛擬現實應用開發實踐 [主 編 劉龍]
- Python程序設計 [主編 姜春磊 陳虹潔]
- C語言程序設計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- 面向對象程序設計 [主編 張勇 張平華 趙小龍]
- Python程序設計基礎及實戰 [主編 劉健]
- C語言程序設計 [姜雪]
- Python程序設計實踐教程 [王鶴琴 蔡正保]
- C++程序設計實踐教程(第三版) [主編 劉衛國 曹岳輝]
- C++程序設計(第三版) [主編 曹岳輝 劉衛國]
- C語言程序設計項目化教程(活頁式) [主編 張利華 潘曉利]
- 機器人流程自動化(RPA)實戰——基于UiPath [主編 金鑫]
- Python 語言程序設計實踐指導 [主編 張雙獅]
- Python程序設計案例教程 [主編 毛錦庚 鐘肖英 周賢來 ]
- 基于.NET Core框架的分布式系統架構設計 [湯佳 著]
- Python語言程序設計教程 [郭其標 房宜汕]
- C語言同步案例習題精解 [主編 肖朝暉]
- Python程序設計 [李國燕 王新強 劉佳 等編著]
- Python程序設計項目化教程(活頁式) [主編 盧鳳偉]
- Java編程基礎案例式教程 [主編 陳艷華 唐春蘭]
- Python語言同步案例習題精解 [主編 肖朝暉]
- Unity應用開發與實戰(微課版) [主 編 程永恒]
- PHP程序設計項目化教程 [主 編 杜海穎]