C語言程序設計(第3版)(高職高專立體化教材計算機系列)
定 價:38 元
叢書名: 高職高專立體化教材·計算機系列
- 作者:李澤中、孫紅艷、張智勇、張建軍、高曉黎
- 出版時間:2016/9/5
- ISBN:9787302436430
- 出 版 社:清華大學出版社
- 中圖法分類:TP312C
- 頁碼:296
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書作為高職高專學生學習計算機編程的入門教材,著重講述了計算機程序設計的基礎知識、基本算法和應用編程思想,其目的在于使學生學習本書之后,能結合實際進行C語言應用程序設計。全書共分10章,系統(tǒng)地介紹了C語言的基本知識、程序結構、基本數(shù)據(jù)類型、運算符和表達式,C語言程序設計的三種基本結構類型——順序結構、選擇結構和循環(huán)結構程序編程,數(shù)組、指針類型、結構體類型、枚舉類型和用戶自定義類型等在程序設計中的應用,以及C語言的函數(shù)應用與文件操作等內容。
本書內容翔實,層次分明,結構緊湊,敘述深入淺出,通俗易懂?梢宰鳛楦呗毟邔<案黝惔髮T盒S嬎銠C專業(yè)的教材,也可作為計算機等級考試的參考書和其他計算機編程人員的參考書。
C語言是目前世界上流行*廣、使用*多的高級程序設計語言。本書作為高職高專學生學習C語言編程的入門教材,著重講述了C語言程序設計的基礎知識、基本算法和應用編程思想,目的在于使學生能結合社會生產實際進行應用程序設計。
全書共分為10章,各章的主要內容簡單說明如下:第1章介紹C語言的特點、標識符和程序的基本結構;第2章介紹C語言的數(shù)據(jù)類型、運算符和表達式;第3、4、5章系統(tǒng)地介紹C語言的順序結構、選擇結構和循環(huán)結構三種基本結構;第7章系統(tǒng)地講述C語言程序的函數(shù)編程及編譯預處理;第6、8、9章系統(tǒng)地介紹C語言的數(shù)組、指針類型、結構體類型、枚舉類型和用戶自定義類型及其在編程中的基本應用;第10章介紹文件的概念及文件的讀寫。
本書內容翔實,層次分明,結構緊湊,每章均附有大量的習題,利于學生鞏固和提高。同時,各章均配有大量的實驗題目,可供學生上機實訓使用。本書適合作為高職高專及各類大專院校計算機專業(yè)的教材,也可作為計算機等級考試和其他從事計算機編程工作人員的參考書。
隨著計算機技術突飛猛進的發(fā)展,特別是計算機網(wǎng)絡和通信技術的廣泛應用和迅速普及,給各行各業(yè)帶來了技術進步和發(fā)展動力。計算機已進入千家萬戶,成為人們工作、學習、生活、娛樂不可缺少的工具。懂不懂計算機,會不會使用計算機,已經成為衡量現(xiàn)代人素質的標準之一。
C語言是目前世界上流行最廣、使用最多的高級程序設計語言。本書作為高職高專學生學習C語言編程的入門教材,著重講述了C語言程序設計的基礎知識、基本算法和應用編程思想,目的在于使學生能結合社會生產實際進行應用程序設計。
全書共分為10章,各章的主要內容簡單說明如下:第1章介紹C語言的特點、標識符和程序的基本結構;第2章介紹C語言的數(shù)據(jù)類型、運算符和表達式;第3、4、5章系統(tǒng)地介紹C語言的順序結構、選擇結構和循環(huán)結構三種基本結構;第7章系統(tǒng)地講述C語言程序的函數(shù)編程及編譯預處理;第6、8、9章系統(tǒng)地介紹C語言的數(shù)組、指針類型、結構體類型、枚舉類型和用戶自定義類型及其在編程中的基本應用;第10章介紹文件的概念及文件的讀寫。
本書由李澤中、孫紅艷任主編,張智勇、張建軍、高曉黎任副主編,并由李澤中統(tǒng)稿。其中,李澤中編寫第1、2、6、7章及附錄,孫紅艷編寫第3、4、5章,張建軍編寫第8章,張智勇編寫第9章,高曉黎編寫第10章。
本書內容翔實,層次分明,結構緊湊,每章均附有大量的習題,利于學生鞏固和提高。同時,各章均配有大量的實驗題目,可供學生上機實訓使用。本書適合作為高職高專及各類大專院校計算機專業(yè)的教材,也可作為計算機等級考試和其他從事計算機編程工作人員的參考書。
由于編者水平有限,書中錯誤和不妥之處在所難免,懇請讀者批評指正,并多提寶貴的意見。
編者
第1章 C語言概述 1
1.1 C語言的發(fā)展 1
1.2 C語言的特點 1
1.3 C語言的符號 2
1.4 C語言程序結構 3
1.4.1 C語言程序的總體結構 3
1.4.2 函數(shù)的一般結構 4
1.4.3 源程序書寫格式 5
1.5 Visual C++ 6.0集成環(huán)境下C語言
上機操作 6
1.5.1 上機實驗操作步驟與要求 6
1.5.2 Visual C++ 6.0系統(tǒng)上機
操作方法 7
習題 13
第2章 數(shù)據(jù)類型、運算符和表達式 15
2.1 C語言的數(shù)據(jù)類型 15
2.2 常量與變量 16
2.2.1 常量 16
2.2.2 變量 20
2.3 變量賦初值 23
2.4 各類數(shù)值型數(shù)據(jù)間的混合運算 24
2.5 C語言的運算符和表達式 25
2.5.1 算術運算符和算術表達式 25
2.5.2 關系運算符和關系表達式 27
2.5.3 邏輯運算符和邏輯表達式 28
2.5.4 賦值運算符和賦值表達式 30
2.5.5 條件運算符和條件表達式 31
2.5.6 逗號運算符和逗號表達式 32
2.5.7 求字節(jié)數(shù)運算 32
2.5.8 位邏輯運算 33
2.5.9 位移運算和位運算賦值
運算符 33
2.5.10 運算符的優(yōu)先級與結合性 35
2.6 上機實訓 36
習題 38
第3章 順序結構程序設計 41
3.1 C語句概述 41
3.2 程序的三種基本結構 42
3.3 賦值語句 43
3.4 格式輸入與輸出 44
3.4.1 printf()函數(shù)(格式輸出函數(shù)) 45
3.4.2 scanf()函數(shù)(格式輸入函數(shù)) 49
3.5 字符數(shù)據(jù)的輸入/輸出函數(shù) 53
3.5.1 putchar函數(shù)(字符輸出函數(shù)) 53
3.5.2 getchar()函數(shù)(字符輸入函數(shù)) 54
3.6 順序結構程序設計舉例 55
3.7 上機實訓 58
習題 59
第4章 選擇結構程序設計 62
4.1 程序流程圖 62
4.2 if語句 64
4.2.1 if語句的三種格式 64
4.2.2 if語句的嵌套 68
4.3 多分支選擇語句(switch語句) 70
4.4 程序綜合舉例 76
4.5 上機實訓 81
習題 81
第5章 循環(huán)結構程序設計 86
5.1 for語句 86
5.1.1 for語句的一般形式和
執(zhí)行過程 86
5.1.2 for語句的各種形式 87
5.1.3 for循環(huán)程序舉例 88
5.2 while語句 90
5.2.1 while語句的一般形式和
執(zhí)行過程 90
5.2.2 使用while語句應注意的
問題 91
5.3 do-while語句 92
5.3.1 do-while語句的一般形式和
執(zhí)行過程 92
5.3.2 使用do-while語句應注意的
問題 93
5.4 多重循環(huán) 93
5.5 break語句和continue語句 94
5.5.1 break語句 95
5.5.2 continue語句 95
5.6 程序綜合舉例 97
5.7 上機實訓 100
習題 101
第6章 數(shù)組 106
6.1 一維數(shù)組 106
6.1.1 一維數(shù)組的定義 106
6.1.2 一維數(shù)組元素的引用 107
6.1.3 一維數(shù)組元素的初始化 108
6.1.4 一維數(shù)組的應用舉例 109
6.2 二維數(shù)組 111
6.2.1 二維數(shù)組的定義 111
6.2.2 二維數(shù)組元素的引用 112
6.2.3 二維數(shù)組元素的初始化 112
6.2.4 二維數(shù)組的應用舉例 113
6.3 字符數(shù)組 114
6.3.1 字符數(shù)組的定義 114
6.3.2 字符數(shù)組的初始化 114
6.3.3 字符數(shù)組的引用及
應用舉例 115
6.3.4 字符串處理函數(shù) 118
6.4 程序綜合舉例 120
6.5 上機實訓 125
習題 125
第7章 函數(shù)及編譯預處理 130
7.1 函數(shù)的定義和調用 130
7.1.1 函數(shù)的定義 130
7.1.2 函數(shù)說明與調用 131
7.1.3 函數(shù)的返回值 133
7.2 變量的作用域 134
7.2.1 局部變量 134
7.2.2 全局變量 134
7.3 變量的存儲類型 137
7.3.1 靜態(tài)存儲方式和動態(tài)
存儲方式 137
7.3.2 變量的存儲類型 137
7.4 函數(shù)間的數(shù)據(jù)傳送 140
7.4.1 傳值方式 140
7.4.2 地址復制方式 141
7.4.3 利用參數(shù)返回結果 142
7.4.4 利用函數(shù)返回值傳遞數(shù)據(jù) 142
7.4.5 利用全局變量傳遞數(shù)據(jù) 142
7.5 函數(shù)的嵌套調用和遞歸調用 142
7.5.1 函數(shù)嵌套調用 142
7.5.2 函數(shù)遞歸調用 144
7.6 內部函數(shù)和外部函數(shù) 145
7.6.1 內部函數(shù) 145
7.6.2 外部函數(shù) 146
7.7 編譯預處理 146
7.7.1 宏定義 146
7.7.2 文件包含 150
7.8 程序綜合舉例 152
7.9 上機實訓 160
習題 160
第8章 指針 167
8.1 地址、指針和變量 167
8.1.1 地址和指針的基本概念 167
8.1.2 指針變量類型的定義 169
8.1.3 指針變量的賦值 169
8.2 指針運算 171
8.2.1 指針運算符 171
8.2.2 指針變量的運算 172
8.3 指針與數(shù)組 174
8.3.1 數(shù)組指針 174
8.3.2 字符指針 184
8.3.3 指針數(shù)組 188
8.4 函數(shù)與指針 191
8.4.1 函數(shù)的指針 191
8.4.2 返回指針值的函數(shù) 192
8.4.3 指向指針的指針 193
8.5 程序綜合舉例 195
8.6 上機實訓 200
8.6.1 實訓1 200
8.6.2 實訓2 201
8.6.3 實訓3 202
習題 203
第9章 結構體、共用體和枚舉類型 207
9.1 結構體類型 207
9.1.1 結構體類型的用途 207
9.1.2 結構體類型的構建及
結構體變量的定義 208
9.1.3 結構體變量的使用 211
9.1.4 結構體數(shù)組應用實例 213
9.2 自定義類型 215
9.2.1 自定義類型的定義及使用 215
9.2.2 自定義類型編程實例 216
9.3 結構體指針 220
9.3.1 指向結構體變量的指針 220
9.3.2 用結構體指針處理鏈表 222
9.4 枚舉類型 230
9.4.1 C語言枚舉類型的
語法規(guī)定 230
9.4.2 枚舉類型應用實例 233
9.5 共用體 235
9.6 程序綜合舉例 236
9.7 上機實訓 239
習題 239
第10章 文件 248
10.1 文件的基本概念 248
10.1.1 文件 248
10.1.2 文件名稱 248
10.1.3 兩種重要的文件類型 249
10.1.4 文件的緩沖機制 250
10.1.5 FILE指針 251
10.1.6 文件位置指針 252
10.1.7 文件結束符 252
10.1.8 訪問文件 253
10.2 文件的打開與關閉 253
10.2.1 打開文件函數(shù)fopen() 253
10.2.2 關閉文件函數(shù)fclose() 255
10.3 文件的順序讀寫 255
10.3.1 字符讀寫函數(shù) 255
10.3.2 字符串讀寫函數(shù) 257
10.3.3 格式化讀寫函數(shù) 259
10.3.4 數(shù)據(jù)塊讀寫函數(shù) 261
10.4 文件的隨機讀寫 263
10.5 文件檢測 266
10.6 程序綜合舉例 267
10.7 上機實訓 270
習題 271
附錄A ASCII代碼表 275
附錄B 常用庫函數(shù) 276
參考文獻 286
第2章 數(shù)據(jù)類型、運算符和表達式
【本章要點】
本章主要介紹C語言的變量和常量的基本概念;各種數(shù)據(jù)類型的定義;變量賦值和初始化的方法;基本運算符的運算規(guī)則、優(yōu)先級和表達式。本章內容是學習C語言程序設計最基礎的部分,通過本章的學習,學生應當能定義各種數(shù)據(jù)類型,根據(jù)要求運用運算符建立一般表達式和編寫簡單程序。
2.1 C語言的數(shù)據(jù)類型
數(shù)據(jù)類型是指數(shù)據(jù)在計算機內存中的表現(xiàn)形式,也可以說是數(shù)據(jù)在程序運行過程中的特征。C語言的數(shù)據(jù)類型分類如圖2.1所示。
圖2.1 C語言的數(shù)據(jù)類型分類
(1) 基本類型:包含整型、實型(又稱浮點型)和字符型三種。
(2) 構造類型:包含數(shù)組類型、結構體類型、聯(lián)合類型(即共用類型)和枚舉類型四種。數(shù)組類型將在第6章介紹,結構體類型、枚舉類型和聯(lián)合類型將在第9章介紹。
(3) 指針類型:指針是一種特殊的,同時又是具有重要作用的數(shù)據(jù)類型。其值用來表示某個變量在內存中的地址。指針類型將在第8章介紹。
(4) 空類型:空類型void用來聲明函數(shù)的返回值類型為空(即不需要函數(shù)的返回值)?疹愋蛯⒃诘7章介紹。
C語言中的數(shù)據(jù),有常量和變量之分,它們都具有上述這些類型。
本章將介紹基本類型中的整型、實型和字符型三種數(shù)據(jù)。
整型有基本整型、短整型、長整型、無符號整型、無符號短整型、無符號長整型;實型有單精度實型和雙精度實型。以上數(shù)據(jù)的類型關鍵字以及在Visual C++ 6.0環(huán)境中占用的字節(jié)數(shù)和取值范圍如表2.1所示。
表2.1 Visual C++ 6.0基本類型的長度和取值范圍
類型關鍵字
長度/節(jié)數(shù)
取值范圍
說 明
int
2
-32 768~32 767
有符號基本整型
unsigned
2
0~65 535
無符號基本整型
short
2
-32 768~32 767
有符號短整型
unsigned short
2
0~65 535
無符號短整型
long
4
-2 147 483 648~2 147 483 647
有符號長整型
unsigned long
4
0~4 294 967 295
無符號長整型
float
4
-3.4×1038~3.4×1038
單精度實型
double
8
1.7×10308 ~1.7×10308
雙精度實型
char
1
0~255
字符型