如何讓學(xué)生在短時間內(nèi)掌握C語言程序設(shè)計的方法,是本書的編寫目的。本書共分10章:第1~3章介紹了C語言的基本知識及程序設(shè)計結(jié)構(gòu);第4、5章著重講解了數(shù)組和函數(shù)的概念;第6章簡要介紹C語言的預(yù)編譯處理;第7章介紹了結(jié)構(gòu)體和共用體;第8章講解了文件的相關(guān)內(nèi)容;第9章概要介紹了C++;第10章綜合所學(xué)知識,進行一個實用的項目設(shè)計。本書體系合理,內(nèi)容實用,通俗易讀,可作為高等院校應(yīng)用型本科、高職高專C語言課程的教材,也適合培訓(xùn)和自學(xué)之用。
蘇傳芳,安徽電子信息職業(yè)技術(shù)學(xué)院副教授,安徽省教學(xué)名師。主要著作:《C語言程序設(shè)計》獲教育部教指委“2011年度高職高專IT類專業(yè)優(yōu)秀教材獎”。獲“安徽省‘十一五’規(guī)劃教材”稱號;安徽省“優(yōu)秀教學(xué)成果三等獎”;安徽省“電子信息職業(yè)技術(shù)學(xué)院優(yōu)秀教學(xué)成果一等獎”稱號。
第1章 C語言概述 1
1.1 C語言產(chǎn)生的背景 1
1.2 C語言的特點 2
1.3 C語言的程序結(jié)構(gòu) 3
1.3.1 C程序的基本結(jié)構(gòu) 3
1.3.2 C函數(shù)的格式 3
1.3.3 關(guān)鍵字 5
1.3.4 小結(jié) 5
1.4 C程序上機步驟 6
1.4.1 運行一個C語言程序的一般
過程 6
1.4.2 常用的操作命令 7
實訓(xùn)1 認(rèn)識C語言程序 13
本章小結(jié) 14
習(xí)題1 14
第2章 數(shù)據(jù)類型、運算符與表達式 16
2.1 C語言的數(shù)據(jù)類型 16
2.2 常量與變量 17
2.2.1 直接常量和符號常量 17
2.2.2 變量 19
2.3 整型數(shù)據(jù) 20
2.3.1 整型常量 20
2.3.2 整型變量 20
實訓(xùn)2 使用整型數(shù)據(jù) 23
2.4 實型數(shù)據(jù) 25
2.4.1 實型常量的表示方法 25
2.4.2 實型變量 25
實訓(xùn)3 使用實型數(shù)據(jù) 27
2.5 字符型數(shù)據(jù) 27
2.5.1 字符常量 27
2.5.2 字符變量 29
2.5.3 字符串常量 31
實訓(xùn)4 使用字符型數(shù)據(jù) 31
2.6 算術(shù)運算符和算術(shù)表達式 32
2.7 賦值運算符和賦值表達式 35
2.8 關(guān)系運算符和關(guān)系表達式 39
2.9 邏輯運算符和邏輯表達式 40
2.10 逗號運算符和逗號表達式 42
2.11 位運算 43
2.11.1 位邏輯運算符 44
2.11.2 移位運算符 45
2.11.3 位賦值運算符 46
2.11.4 不同長度的數(shù)據(jù)進行位運算 47
實訓(xùn)5 使用運算符和表達式 47
2.12 變量的地址和指向變量的指針 49
2.12.1 變量的地址 49
2.12.2 變量的指針和指向變量的
指針變量 50
2.12.3 指針運算符和取地址運算符 50
實訓(xùn)6 指針的初步應(yīng)用 52
本章小結(jié) 53
習(xí)題2 53
第3章 基本程序結(jié)構(gòu) 57
3.1 程序的3種基本結(jié)構(gòu) 57
3.1.1 結(jié)構(gòu)化程序設(shè)計 57
3.1.2 C語言的語句 59
3.2 賦值語句 60
3.3 數(shù)據(jù)的輸入和輸出 60
3.3.1 字符數(shù)據(jù)的輸入/輸出函數(shù)
――putchar()函數(shù)
和getchar()函數(shù) 61
3.3.2 格式輸入/輸出函數(shù):
printf函數(shù)和 scanf函數(shù) 62
實訓(xùn)7 使用輸入/輸出函數(shù) 69
3.4 順序結(jié)構(gòu)程序設(shè)計 72
3.5 選擇結(jié)構(gòu)程序設(shè)計 73
3.5.1 if語句 73
3.5.2 switch語句 78
實訓(xùn)8 if語句和switch語句的
使用 80
3.6 循環(huán)結(jié)構(gòu)程序設(shè)計 85
3.6.1 goto語句及goto語句構(gòu)成的
循環(huán) 85
3.6.2 while語句 / do-while語句
/ for 語句 86
實訓(xùn)9 while語句、do-while語句
和for語句的使用 93
課程設(shè)計1 模擬ATM取款機
界面 101
本章小結(jié) 104
習(xí)題3 105
第4章 數(shù)組 110
4.1 一維數(shù)組 110
4.1.1 一維數(shù)組的定義、引用和
初始化 111
4.1.2 數(shù)組與指針 114
實訓(xùn)10 一維數(shù)組的應(yīng)用 117
4.2 二維數(shù)組 120
4.2.1 二維數(shù)組的定義 121
4.2.2 二維數(shù)組元素的引用 121
4.2.3 二維數(shù)組的初始化 123
4.2.4 二維數(shù)組與指針 123
實訓(xùn)11 二維數(shù)組的應(yīng)用 125
4.3 字符數(shù)組 127
4.3.1 字符數(shù)組的定義、引用和
初始化 128
4.3.2 字符串的使用 129
4.3.3 字符串處理函數(shù) 130
實訓(xùn)12 英文打字練習(xí)程序 133
4.4 指針數(shù)組和指向指針的指針 136
4.4.1 指針數(shù)組的概念 137
4.4.2 指向指針的指針 138
4.4.3 指針數(shù)組作為main函數(shù)的
形參 139
實訓(xùn)13 指針的應(yīng)用 140
課程設(shè)計2 用高斯消去法解線性
方程組 141
本章小結(jié) 144
習(xí)題4 144
第5章 函數(shù) 146
5.1 函數(shù)定義 146
實訓(xùn)14 建立和使用函數(shù) 149
5.2 函數(shù)參數(shù)與返回值 150
5.2.1 形式參數(shù)與實際參數(shù) 150
5.2.2 參數(shù)的值傳遞方式和指針
(地址)傳遞方式 151
實訓(xùn)15 參數(shù)的值傳遞方式和
地址傳遞方式 153
5.2.3 參數(shù)類型 155
實訓(xùn)16 函數(shù)參數(shù)傳遞的形式 157
5.2.4 函數(shù)的返回值 158
實訓(xùn)17 函數(shù)的返回值 159
5.3 函數(shù)調(diào)用 160
5.3.1 函數(shù)調(diào)用的基本問題 160
5.3.2 函數(shù)嵌套調(diào)用 163
5.3.3 函數(shù)遞歸調(diào)用 164
實訓(xùn)18 嵌套與遞歸調(diào)用的實現(xiàn) 166
5.4 函數(shù)與指針 168
5.4.1 返回指針值的函數(shù) 168
5.4.2 指向函數(shù)的指針 169
5.5 變量作用域和存儲類別 171
5.5.1 局部變量 171
5.5.2 全局變量 173
5.5.3 變量存儲類別 174
實訓(xùn)19 局部變量和全局變量的
使用 177
5.6 外部函數(shù)和內(nèi)部函數(shù) 178
本章小結(jié) 180
習(xí)題5 181
第6章 編譯預(yù)處理 184
6.1 預(yù)處理命令概述 184
6.2 宏定義 185
6.2.1 不帶參數(shù)的宏定義 185
6.2.2 帶參數(shù)的宏定義 187
6.3 文件包含處理 190
6.4 條件編譯 192
實訓(xùn)20 定義宏和使用宏 194
本章小結(jié) 197
習(xí)題6 197
第7章 結(jié)構(gòu)體和鏈表 201
7.1 結(jié)構(gòu)體 201
7.1.1 結(jié)構(gòu)體定義、引用和
初始化 202
7.1.2 結(jié)構(gòu)體數(shù)組和結(jié)構(gòu)體指針 207
7.1.3 結(jié)構(gòu)體與函數(shù) 210
實訓(xùn)21 結(jié)構(gòu)體的應(yīng)用 213
7.2 鏈表 214
7.2.1 鏈表的概念 214
7.2.2 鏈表的實現(xiàn) 215
7.2.3 鏈表的操作 219
7.3 共用體和枚舉類型 222
7.3.1 共用體定義、使用和
初始化 222
7.3.2 枚舉類型定義、使用和
初始化 224
7.4 類型定義 226
課程設(shè)計3 簡單學(xué)生管理程序 227
本章小結(jié) 232
習(xí)題7 232
第8章 文件 236
8.1 文件類型指針 238
8.2 文件的打開與關(guān)閉 239
8.3 文件的讀/寫操作 241
實訓(xùn)22 文件加密程序的實現(xiàn)及
文件的讀/寫操作 244
8.4 文件定位與出錯檢測 249
8.4.1 文件定位函數(shù)――fseek()
函數(shù) 249
8.4.2 出錯檢測函數(shù)――ferror()
函數(shù) 249
實訓(xùn)23 加/解密數(shù)據(jù)庫程序及
文件定位操作 250
8.5 其他文件函數(shù) 253
課程設(shè)計4 給程序加上行號 254
本章小結(jié) 256
習(xí)題8 257
第9章 C++概述 258
9.1 C++的特點及輸入/輸出 258
9.1.1 C++的特點 258
9.1.2 C++的輸入/輸出 260
實訓(xùn)24 熟練使用cin和cout 264
9.2 面向?qū)ο蟾攀?268
9.2.1 面向?qū)ο蟮幕靖拍?268
9.2.2 面向?qū)ο蟮娜筇卣?269
9.3 類和對象的定義及使用 270
9.3.1 類的定義 270
9.3.2 對象的創(chuàng)建及使用 272
9.3.3 構(gòu)造函數(shù)與析構(gòu)函數(shù) 273
實訓(xùn)25 類和對象的使用 275
本章小結(jié) 276
習(xí)題9 277
第10章 項目實踐――學(xué)生信息管理系統(tǒng) 279
10.1 系統(tǒng)基本需求 279
10.2 結(jié)構(gòu)設(shè)計 282
10.3 功能函數(shù)的實現(xiàn) 284
10.4 項目總結(jié) 288
附錄A 常用字符與標(biāo)準(zhǔn)ASCII對照表 290
附錄B 運算符和結(jié)合性 292