第1章遇見C語言16
1.1 C語言介紹17
1.1.1編程語言簡介17
1.1.2代C語言18
1.1.3 C語言19的特性
1.2選擇C語言的理由21
1.2.1 C語言的發展趨勢
1.2.2 C語言成功案例23
1.2.3 C語言的應用領域25
1.3如何學好25
1.3.1建立學習態度26
1.3.2打好基礎26
1.3.3多問多溝通26
1.3.4養成良好的編程習慣27
1.3.5多動手勤思考27
1.3.6掌握學習方法27
1.4本章摘要28
第二章C語言程序設計準備29
2.1編程格式30
壹個簡單的C程序
2.1.2標識符和關鍵字34
2.2開發環境37
2.2.1 Turbo C 2.0 38
Visual C++ 6.0 42
2.3壹個完整的C程序48
2.4實踐練習52
2.4.1編寫壹個簡單的C程序52
2.4.2熟悉開發工具53
2.5本章概述53
第三章C語言的靈魂——算法54
3.1算法的基本概念55
3.1.1算法的特點55
3.1.2算法的優缺點57
3.2描述算法57
3.2.1自然語言58
3.2.2描述流程圖58
繪制N-S流程圖64
偽代碼68
3.3本章概述69
第4章常量和變量70
4.1了解數據類型71
4.2常數72的解釋
4.2.1整數常數72
4.2.2真實常數75
4.2.3字符常數76
4.2.4轉義字符80
符號常數81
4.2.6場景應用1:用putchar函數輸出“我愛C”82。
4.2.7場景應用2: printf函數結合轉義符83
4.3變量83
4.3.1整數變量84
4.3.2場景應用:找出購買水果花費的總金額86
真實變量87
4.3.4字符變量89
4.4掌握混合操作91
4.5實戰演習93
4.5.1使用printf語句輸出變量93
4.5.2使用字符變量輸出字符串94
4.6本章概述94
第5章表達式和運算符95
5.1表達式96的解釋
5.2賦值運算符和賦值表達式98
初始值為98的變量
5.2.2自動類型轉換100
5.2.3強制類型轉換100
5.3掌握算術運算符和表達式102
5.3.1算術運算符102
5.3.2算術表達式102
5.3.3優先級和組合104
5.3.4自增自減運算符105
5.3.5場景應用:運算後求四個變量的值,107。
5.4理解關系運算符和表達式108
5.4.1關系運算符108
5.4.2關系表達式109
5.4.3優先級和組合110
5.5邏輯運算符和表達式的解釋111
5.5.1邏輯運算符111
邏輯表達式112
5.5.3優先級和組合112
5.6使用按位邏輯運算符和表達式113
5.6.1位邏輯運算符114
5.6.2位邏輯表達式114
5.7引入逗號運算符和表達式114。
5.8使用復合賦值運算符116。
5.9判斷條件運算符117
5.10理解運算符的優先級和組合118
5.11實際練習119
5.11.1用復合賦值運算符求計算結果119。
5.11.2用自增自減運算符求120的計算結果。
5.11.3寫壹個簡單的計算加班費的程序121。
5.12本章概述122
第六章輸入輸出功能123
6.1解釋聲明124
6.1.1表達式語句124
6.1.2空語句124
6.1.3復合報表124
6.2輸入和輸出字符數據125
6.2.1輸出字符數據125
6.2.2輸入字符數據126
6.2.3場景應用:使用getchar函數取消獲取Entet密鑰127。
6.3輸入和輸出字符串128
6.3.1使用字符串輸出函數128。
6.3.2掌握字符串輸入功能130。
6.4介紹格式輸出功能131
6.5解釋格式輸入功能134
6.6應用程序序列編程138
6.7實踐練習141
6.7.1將輸入的小寫字符轉換成大寫字符141。
6.7.2模擬工資計算器142
6.7.3輸入輸出古語142。
6.8本章概述143
第七章選擇結構編程144
7.1 if選擇語句145
7.2不同形式的IF語句145
7.2.1單條件單分支if語句146
7.2.2單條件雙分支if語句149
7.2.3多條件多分支if語句153
7.2.4場景應用:輸入數值檢查156的字符類型。
7.3掌握if語句157的嵌套形式
7.4註意if語句160的常見錯誤。
7.4.1使用分號的註意事項
7.4.2有條件配售的註意事項161
7 . 4 . 3 if和else 162配對註意事項
支架162的重要性
7.5判斷支路選擇開關語句163
7 . 5 . 1 Switch語句的基本形式163
7.5.2多路切換模式的切換語句167
7.6區分if…else語句和switch語句169
7.7應用選擇結構程序171
7.8實踐練習173
7.8.1計算函數,得到y 173的值。
7.8.2輸出三個變量的最大數,174。
7.8.3計算增加的工資175。
7.9本章概述175
第八章循環語句176
8.1編寫循環語句177
8.2執行while循環177
8.2.1 while循環語句178的壹般形式
8.2.2場景應用:求數值180中所有正整數之和。
8.2.3避免while循環語句182的無限循環。
8.2.4理解while循環語句183的空循環體
8.2.5註意while循環語句中常見的錯誤183。
8.3 for循環語句185的解釋
8.3.1 for循環語句185的壹般形式
8.3.2靈活多變的for循環語句189
8.3.3在for語句中使用逗號192。
8.4介紹do-while語句193。
8.5比較三個循環195
8.6使用循環嵌套195
8.6.1各種結構的循環嵌套195
8.6.2循環嵌套實例197
8.7轉賬對賬單199
8.7.1轉到語句200
8.7.2中斷聲明202
8.7.3繼續陳述203
8.8區分三種跳轉語句205
8.9練習練習205
8.9.1打印出大寫字母205的ASCII碼對照表
8.9.2打印出小寫字母206的ASCII碼對照表
8.9.3輸出0到100之間不能被3整除的數字207。
8.10本章摘要209
第二篇核心文章
第九章陣列212
9.1引入了數組213的概念
分類9.1.1數組213
9.1.2數組的維數213
9.2應用壹維數組214
9.2.1壹維數組定義214
9.2.2壹維數組引用215
9.2.3壹維數組的初始化217
9.2.4壹維數組的應用220
9.3主二維陣列222
9.3.1二維數組的定義222
9.3.2二維數組的引用223
2D陣列的初始化223
二維數組的應用227
9.4多維數組的解釋228
9.5使用字符數組229
9.5.1字符數組定義229
9.5.2引用字符數組229
字符數組的初始化229
9.5.4字符數組231的結束標誌
9.5.5字符數組的輸出232
9.5.6字符數組233的輸入
9.5.7輸出壹個包含空格的完整字符串234
字符數組的應用235
9.6字符串處理功能236
9.6.1字符串237副本
9.6.2字符串串聯238
9.6.3字符串比較240
9.6.4字符串大小寫轉換241
9.6.5獲取字符串長度243
9.7陣列245的熟練應用
9.7.1反向輸出字符串245
9.7.2使用數組計算學生分數246
9.7.3場景應用:字符串248的加密和解密
9.8練習題250
9.8.1實現strcpy函數250的功能
9.8.2計算壹個字符中元素的個數251。
9.8.3將字符串251重新排序
9.9本章概述252
第10章功能253
10.1功能概述254
10.2定義函數256
10.2.1函數定義表256
10.2.2定義和聲明
10.3了解退貨單262
10.3.1函數返回262。
10.3.2返回值266
10.4傳遞函數參數269
10.4.1形式參數和實際參數269
10.4.2數組作為函數參數271。
10.4.3了解主276的參數
10.5調用函數276
10.5.1函數調用方法277
10.5.2嵌套調用280
10.5.3遞歸調用282
10.6靈活的應用功能285
10.6.1函數的應用56438 . 66666666667
10.6.2場景應用:使用字符函數判斷輸入字符290
10.7練習和練習292
10.7.1輸出壹個更大的整數292。
10.7.2求10學生的平均分。
10.7.3驗證6174 293
10.8本章摘要294
第11章指針296
11.1理解指針297的相關概念
11.1.1介紹地址和指針297
11.1.2解釋變量和指針298
11.1.3使用指針變量299。
11.1.4指針自加自減運算303
11.1.5場景應用:輸出整數變量地址304
11.2控制數組和指針305
11.2.1壹維數組和指針306
11.2.2場景應用1:輸出數組元素309
11.2.3 2D數組和指針310
11.2.4場景應用二:放壹個3行5列的二維數組。
第二行元素輸出313
字符串和指針314
11.2.6字符串數組316
11.3指針對指針318
11.3.1應用介紹指針指向指針318
11.3.2場景應用:輸出偶數320。
11.4指針變量321作為函數參數。
11.5返回指針值331的函數
11.5.1引入了返回指針值的函數331。
11.5.2場景應用:求矩形的周長332
11.6指針數組作為主函數的參數333。
11.7實戰練習335
11.7.1以相反的順序存儲數組中的元素值。
11.7.2連接兩個字符串,輸出336。
11.7.3使用指針復制字符串336
11.8本章摘要337
第12章結構和共同體338
12.1應用結構339
12.1.1結構類型339的概念
結構變量的定義340
12.1.3引用結構變量342
12.1.4結構類型344初始化
12.1.5場景應用:輸出學生信息345
12.2主結構數組348
12.2.1定義了結構數組348。
12.2.2初始化結構數組349
12.2.3場景應用:輸出學生信息351
12.3解釋結構指針353
12.3.1結構變量353的指針
指向結構數組356的指針
12.3.3結構作為功能參數358
12.4引入了包含結構360的結構。
12.5應用社區362
12.5.1公地的概念362
12.5.2通用車身變量參考363
12.5.3公共卷變量的初始化364
12.5.4常見體型的數據特征365
12.6枚舉類型365的解釋
實踐練習366
計算候選人的票數
12.7.2師生信息存儲系統367
12.7.3計算學生綜合成績368
12.8本章摘要368
第13章鏈表與算法369
13.1鏈表介紹370
13.1.1鏈表概述370
創建壹個動態鏈表371
13.1.3輸出鏈表374
13.2對鏈表執行相關操作376
13.2.1鏈表的插入操作377
13.2.2鏈表的刪除操作380
13.3使用數組排序算法384
1選擇排序385
13.3.2氣泡排序387
13.3.3交換法排序389
插入排序391
13.3.5按壹半排序方法394
13.3.6比較數組排序算法396
13.4實踐練習397
13.4.1鏈表的刪除操作397
13.4.2按選擇方法排序398
13.4.3按冒泡、交換、插入、半折等排序。399
13.5本章第399節
第三篇高級文章
第65438章+04位操作402
14.1解釋位和字節403
14.2主按位運算運算符403
14.2.1和運算符404
14.2.2或操作員405
14.2.3“非”運算符407
14.2.4異或運算符409
14.2.5“左移”運算符412
14.2.6“右移”操作員413
14.2.7位操作復合賦值運算符415
14.2.8不同長度數據的位操作415
14.3循環移位416
14.4什麽是位域418?
14.4.1位域419的概念和定義
14.4.2位域420描述
14.5實際練習421
14.5.1對兩個數進行AND和OR運算的結果是421。
14.5.2求壹個數422“左移”和“右移”的結果
14.5.3求壹個數“循環左移”和“循環右移”422的結果
14.6本章摘要423
第15章倉儲管理424
15.1內存組織模式425
15.1.1理解記憶的組織425
堆和棧的解釋425
15.2動態管理428
15.2.1動態分配內存空間-malloc函數428
15.2.2連續內存空間數組的動態分配-Calloc函數429
15.2.3改變ptr指針的大小-Realloc函數431
15.2.4場景應用:realloc函數用於重新分配內存432。
15 . 2 . 5——釋放函數432,釋放為整型變量分配的內存空間。
記憶喪失433
15.4變量的存儲類別434
15.4.1動態存儲和靜態存儲56636.666666666667
15.4.2將局部變量修改為自動變量435
15.4.3用不同的位置和意義聲明靜態變量436
15.4.4寄存器存儲類的寄存器變量437
15.4.5外部變量外部存儲437
15.5實踐練習438
15.5.1動態分配數組內存438
15.5.2為數組動態分配釋放內存439。
15.5.3用靜態局部整數變量計算3的平方和立方440。
15.6本章摘要440
第16章功能類型和預處理441
16.1內部和外部函數442
16.1.1內部函數介紹442
16.1.2外部函數的解釋443
16.2宏定義的靈活使用444
16.2.1不帶參數的宏定義445
16.2.2帶參數的宏定義446
16.3編寫#包含指令448
16.4掌握條件編譯450
16.4.1 #if命令450
16.4.2 #ifdef和#ifndef命令453
16.4.3 #undef命令455
16 . 4 . 4 #線命令455
16 . 4 . 5 #雜註命令456
練習題457
16.5.1求兩個數相乘的乘積457
16.5.2從三個數中找出最小的數457
16.5.3從三個數中找出最大數458
16.6本章摘要459
第17章讀寫文件460
文件概述461
17.2掌握文件的基本操作462
17.3使用文件指針463
17.4打開和關閉文件464
17.4.1文件打開464
檔案的關閉
17.5讀寫文件466
17.5.1寫字符函數-FPUTC函數466
17.5.2讀取字符功能-FGETC功能468
17.5.3寫字符串函數-fputs函數469
17.5.4讀取字符串函數-FGETS函數470
17.5.5格式寫函數-FPRINTF函數472
17.5.6格式讀取函數-fscanf函數474
17.5.7數據塊讀寫函數-Fread函數和fwrite函數475
17.6位置文件478
17.6.1隨機讀寫操作-fseek函數479
17.6.2返回位置指針倒帶函數481
17.6.3 ftell函數483
練習題485
17 . 7 . 1復制文件內容485
17.7.2保存學生信息486
17.8本章摘要487
第四條實戰篇
第18章學生管理系統490
18.1分析要求491
18.2設計系統491
18.3功能模塊設計492
18.3.1功能選擇界面492
18.3.2學生成績信息錄入494
18.3.3查詢學生成績信息496
18.3.4刪除學生成績信息497
18.3.5修改學生成績信息499
18.3.6插入學生成績信息501
18.3.7學生人數統計504
18.4本章摘要505
附錄a技術術語表506