本書分為基礎(chǔ)篇、提高篇和實(shí)驗(yàn)篇。基礎(chǔ)篇主要內(nèi)容包括程序設(shè)計(jì)和C語言基礎(chǔ)知識(shí),以及順序、選擇和循環(huán)結(jié)構(gòu)程序設(shè)計(jì),使讀者初步建立起利用C語言進(jìn)行簡(jiǎn)單程序設(shè)計(jì)的思想,學(xué)會(huì)進(jìn)行簡(jiǎn)單的程序設(shè)計(jì);提高篇主要內(nèi)容包括函數(shù)、編譯預(yù)處理、數(shù)組等構(gòu)造型數(shù)據(jù)類型、指針類型及對(duì)文件的操作,C語言模塊化的編程思想及對(duì)數(shù)組、指針類型的應(yīng)用,學(xué)會(huì)使用構(gòu)造型數(shù)據(jù)類型和指針類型處理問題,學(xué)會(huì)對(duì)文件進(jìn)行操作;實(shí)驗(yàn)篇共10個(gè)實(shí)驗(yàn)。所有程序在Visual C環(huán)境下調(diào)試通過。提供程序代碼、課后習(xí)題指導(dǎo)和電子課件。
王秀鸞,女,在青島理工大學(xué)任教10余年,一直從事計(jì)算機(jī)基礎(chǔ)課程教學(xué),教學(xué)經(jīng)驗(yàn)豐富,積極參與學(xué)校及山東省的精品課程和在線課程建設(shè),并擔(dān)任課程的主講人,參與多部教材的編寫工作。其中《大學(xué)計(jì)算機(jī)基礎(chǔ)》被評(píng)為山東省精品課程,《大學(xué)計(jì)算機(jī)基礎(chǔ)》和《程序設(shè)計(jì)基礎(chǔ)(C)》均上線了教育廳山東省高等學(xué)校在線開放課程平臺(tái)。
目 錄
基礎(chǔ)篇
第1章 C語言概況 1
1.1 程序設(shè)計(jì)的基本概念 1
1.1.1 程序和程序設(shè)計(jì)語言 1
1.1.2 程序設(shè)計(jì)的一般過程 2
1.1.3 結(jié)構(gòu)化程序設(shè)計(jì)方法 2
1.2 C語言的初步知識(shí) 4
1.2.1 C語言的起源與特點(diǎn) 4
1.2.2 初識(shí)C語言程序 6
1.2.3 C語言字符集與標(biāo)識(shí)符 7
1.2.4 C語言程序的基本構(gòu)成 8
1.2.5 簡(jiǎn)單的屏幕輸出 9
1.2.6 C語言程序的上機(jī)調(diào)試過程 10
本章小結(jié) 11
習(xí)題1 12
第2章 C語言基礎(chǔ) 13
2.1 數(shù)據(jù)類型 13
2.1.1 數(shù)據(jù)類型 13
2.1.2 基本數(shù)據(jù)類型標(biāo)識(shí)符 13
2.2 常量和變量 14
2.2.1 常量 15
2.2.2 變量 18
2.3 算術(shù)運(yùn)算 20
2.3.1 算術(shù)運(yùn)算符 21
2.3.2 算術(shù)表達(dá)式 21
2.4 3個(gè)特殊的運(yùn)算符 25
2.4.1 sizeof運(yùn)算符 25
2.4.2 逗號(hào)運(yùn)算符 25
2.4.3 取地址運(yùn)算符& 25
本章小結(jié) 26
習(xí)題2 26
第3章 順序結(jié)構(gòu) 28
3.1 C語言程序的語句 28
3.1.1 說明語句 28
3.1.2 執(zhí)行語句 28
3.2 賦值運(yùn)算 29
3.2.1 賦值運(yùn)算符和賦值表達(dá)式 29
3.2.2 賦值語句 30
3.2.3 自增、自減運(yùn)算符 32
3.3 數(shù)據(jù)的輸入和輸出 33
3.3.1 單個(gè)字符的輸入和輸出函數(shù) 33
3.3.2 格式化輸入和輸出函數(shù) 35
3.4 程序舉例 39
本章小結(jié) 42
習(xí)題3 42
第4章 選擇結(jié)構(gòu) 45
4.1 關(guān)系運(yùn)算 45
4.1.1 關(guān)系運(yùn)算符 45
4.1.2 關(guān)系表達(dá)式 45
4.2 邏輯運(yùn)算 46
4.2.1 邏輯運(yùn)算符 47
4.2.2 邏輯運(yùn)算的值 47
4.2.3 邏輯表達(dá)式 48
4.3 if語句 49
4.3.1 if語句的3種形式 49
4.3.2 if語句的嵌套 54
4.3.3 條件運(yùn)算符和條件表達(dá)式 55
4.4 switch語句 56
4.5 程序舉例 58
本章小結(jié) 62
習(xí)題4 62
第5章 循環(huán)結(jié)構(gòu) 67
5.1 while語句 67
5.2 do-while語句 70
5.3 for語句 71
5.4 轉(zhuǎn)移語句 75
5.4.1 break語句 76
5.4.2 continue語句 76
5.5 程序舉例 77
本章小結(jié) 81
習(xí)題5 82
第6章 編譯預(yù)處理 88
6.1 宏定義 88
6.1.1 不帶參數(shù)的宏定義 88
6.1.2 帶參數(shù)的宏定義 90
6.2 文件包含 92
6.3 條件編譯 93
本章小結(jié) 93
習(xí)題6 94
提高篇
第7章 數(shù)組 97
7.1 一維數(shù)組 97
7.1.1 一維數(shù)組的定義 97
7.1.2 一維數(shù)組的初始化 98
7.1.3 一維數(shù)組元素的引用 99
7.1.4 一維數(shù)組的應(yīng)用 100
7.2 二維數(shù)組 104
7.2.1 二維數(shù)組的定義 104
7.2.2 二維數(shù)組的初始化 105
7.2.3 二維數(shù)組元素的引用 105
7.2.4 二維數(shù)組應(yīng)用舉例 106
7.3 字符數(shù)組 110
7.3.1 字符數(shù)組的定義 110
7.3.2 字符串與字符數(shù)組 110
7.3.3 字符數(shù)組的初始化 111
7.3.4 字符數(shù)組的輸入/輸出 111
7.3.5 字符串(字符數(shù)組)處理
函數(shù) 113
7.3.6 字符數(shù)組的應(yīng)用 116
本章小結(jié) 119
習(xí)題7 119
第8章 函數(shù) 125
8.1 自定義函數(shù) 125
8.1.1 自定義函數(shù)的定義 125
8.1.2 自定義函數(shù)的返回值 126
8.1.3 自定義函數(shù)的調(diào)用 127
8.1.4 自定義函數(shù)的聲明 128
8.2 簡(jiǎn)單變量作為函數(shù)形參 129
8.3 函數(shù)的嵌套調(diào)用和遞歸調(diào)用 131
8.3.1 函數(shù)的嵌套調(diào)用 131
8.3.2 函數(shù)的遞歸調(diào)用 133
8.4 變量的存儲(chǔ)類別 136
8.4.1 局部變量及其存儲(chǔ)類別 137
8.4.2 全局變量及其存儲(chǔ)類別 140
8.4.3 函數(shù)的作用域和存儲(chǔ)類別 143
8.5 程序舉例 144
本章小結(jié) 147
習(xí)題8 148
第9章 指針 153
9.1 指針變量 153
9.1.1 變量的指針和指針變量 153
9.1.2 指針變量的定義和初始化 154
9.1.3 指針變量的引用 155
9.2 數(shù)組指針變量 158
9.2.1 數(shù)組指針變量的定義和引用 158
9.2.2 二維數(shù)組的指針 162
9.2.3 指針與字符串 165
9.3 指針數(shù)組和二級(jí)指針變量 169
9.3.1 指針數(shù)組 169
9.3.2 二級(jí)指針變量 171
本章小結(jié) 171
習(xí)題9 173
第10章 函數(shù)參數(shù)傳遞進(jìn)階 177
10.1 指針變量作為函數(shù)參數(shù) 177
10.2 數(shù)組名和數(shù)組指針變量作為
函數(shù)參數(shù) 178
10.3 行數(shù)組指針變量作為函數(shù)參數(shù) 180
10.4 字符型指針變量作為函數(shù)參數(shù) 181
10.5 指向函數(shù)的指針變量作為函數(shù)
參數(shù) 183
10.6 main( )函數(shù)的形參 186
本章小結(jié) 187
習(xí)題10 188
第11章 結(jié)構(gòu)體與共用體 193
11.1 自定義類型標(biāo)識(shí)符 193
11.2 結(jié)構(gòu)體的定義與引用 194
11.2.1 結(jié)構(gòu)體類型的定義 194
11.2.2 結(jié)構(gòu)體類型變量、數(shù)組和指針
變量的定義 195
11.2.3 結(jié)構(gòu)體類型變量、數(shù)組和指針
變量的初始化 198
11.2.4 結(jié)構(gòu)體類型變量、數(shù)組和指針
變量的引用 198
11.2.5 函數(shù)之間結(jié)構(gòu)體類型數(shù)據(jù)的
傳遞 203
11.2.6 用指針處理鏈表 205
11.3 共用體的定義與引用 210
11.3.1 共用體類型的定義 211
11.3.2 共用體類型變量的定義 211
11.3.3 共用體變量的引用 212
11.4 枚舉類型 213
本章小結(jié) 215
習(xí)題11 216
第12章 位運(yùn)算 219
12.1 位運(yùn)算符 219
12.2 位運(yùn)算符的功能 219
12.2.1 按位與運(yùn)算(&) 219
12.2.2 按位或運(yùn)算(|) 220
12.2.3 按位異或運(yùn)算(^) 220
12.2.4 按位取反運(yùn)算(~) 220
12.2.5 按位左移(<<) 221
12.2.6 按位右移(>>) 221
12.2.7 復(fù)合位賦值運(yùn)算符 221
本章小結(jié) 222
習(xí)題12 222
第13章 數(shù)據(jù)文件 224
13.1 C語言文件 224
13.2 定義、打開和關(guān)閉文件 225
13.2.1 文件指針 225
13.2.2 打開文件(fopen( )函數(shù)) 225
13.2.3 關(guān)閉文件(fclose( )函數(shù)) 227
13.3 文件的輸入/輸出 227
13.3.1 fputc( )函數(shù)和fgetc( )函數(shù) 227
13.3.2 fgets( )函數(shù)和fputs( )函數(shù) 229
13.3.3 fprintf( )函數(shù)和fscanf( )函數(shù) 230
13.3.4 fread( )函數(shù)和fwrite( )函數(shù) 232
13.4 文件的定位 233
13.4.1 rewind( )函數(shù) 234
13.4.2 fseek( )函數(shù)和隨機(jī)讀/寫 234
13.4.3 ftell( )函數(shù) 235
本章小結(jié) 235
習(xí)題13 235
實(shí)驗(yàn)篇
第14章 實(shí)驗(yàn) 238
實(shí)驗(yàn)一 初識(shí)C語言編程 238
實(shí)驗(yàn)二 算術(shù)運(yùn)算與標(biāo)準(zhǔn)函數(shù)使用 241
實(shí)驗(yàn)三 順序結(jié)構(gòu)的程序設(shè)計(jì) 243
實(shí)驗(yàn)四 選擇結(jié)構(gòu)程序設(shè)計(jì) 245
實(shí)驗(yàn)五 循環(huán)結(jié)構(gòu)程序設(shè)計(jì) 248
實(shí)驗(yàn)六 數(shù)組類型程序設(shè)計(jì) 251
實(shí)驗(yàn)七 指針程序設(shè)計(jì) 254
實(shí)驗(yàn)八 函數(shù)程序設(shè)計(jì) 256
實(shí)驗(yàn)九 結(jié)構(gòu)體和共用體程序設(shè)計(jì) 260
實(shí)驗(yàn)十 數(shù)據(jù)文件 262
附錄A 運(yùn)算符的優(yōu)先級(jí)和結(jié)合性 264
附錄B 標(biāo)準(zhǔn)函數(shù) 265
附錄C ASCII字符編碼表 268
附錄D 程序調(diào)試中常見錯(cuò)誤信息一覽 269
參考文獻(xiàn) 276