本書匯集了作者多年教學改革的實踐經(jīng)驗和行業(yè)實踐,與多所高職院校一線教師和企業(yè)一線工程師聯(lián)合編寫,按照學生學歷層次及應用范圍,知識點由淺入深、逐步推進,使學生能夠輕松掌握C語言的語法知識,逐步提高閱讀程序、調(diào)試程序、編寫程序的能力,尤其注重結合實際應用進行能力訓練。本書主要內(nèi)容包括:C語言程序設計概述、基本語法、輸入/輸出函數(shù)、結構化程序設計、數(shù)組、指針、函數(shù)、結構體與共用體、C 語言應用。
C 語言是一門通用計算機編程語言,既具有高級語言的特點,又具有匯編語言的特點,應用廣泛。C 語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產(chǎn)生少量的機器碼以及不需要任何運行環(huán)境支持便能運行的編程語言。因此,C 語言具
有以下特點:
(1)語句簡潔、緊湊,使用方便、靈活。
(2)同時具備高級語言和低級語言的特征。
(3)結構化語言,具有結構化的控制語句。
(4)數(shù)據(jù)類型豐富。
(5)具有強大的圖形功能,支持多種顯示器和驅(qū)動器;而且計算功能、邏輯判斷功能也比較強大,可實現(xiàn)決策目的。
(6)具有良好的跨平臺性、可移植性,適用范圍廣。
(7)生成目標代碼質(zhì)量高,程序執(zhí)行效率高。
C 語言結構簡單、使用靈活,非常適合作為程序設計學習的入門級語言。本書的編寫目的是按照程序設計領域?qū)χ、低端編程崗位的需求,兼顧高端計算機軟件編程參考書籍的需要,按照高職院校計算機相關專業(yè)人才培養(yǎng)方向,由多位長期從事高職教育的教師和企業(yè)一線具有軟件開發(fā)經(jīng)驗的高級工程師共同編寫。本書針對高職院校學生學習C 語言的基本知識和行業(yè)應用,以企業(yè)崗位需求倒推能力培養(yǎng),由淺入深、逐步推進,讓學生能夠輕松掌握C語言的語法知識,培養(yǎng)學生編寫、調(diào)試程序的技能,以及一定的應用程序開發(fā)能力。教材的基本特點如下:
_x0001_ 知識點由淺入深,教學應用與企業(yè)實際應用結合。
程序結構、例程分析詳細,注重程序設計思想引導。
C語言應用方向突出,解決實際工程常用計算、圖形界面、硬件控制、通信等問題。本書共分為9章,內(nèi)容包括:C語言程序設計概述、基本語法、輸入/輸出函數(shù)、結構化程序設計、數(shù)組、指針、函數(shù)、結構體與共用體、C語言應用,另外包括五個附錄:全國計算機等級考試(二級C 語言程序設計)模擬題、C 語言關鍵字、C 語言運算符、ASCII 值對照表、C 語言標準庫函數(shù)。本書配有同步訓練手冊《C 語言程序設計實訓指導與習題》和配套教學資源。
本書適合作為高職院校學生C 語言程序設計課程的教材,也可作為高校本科層次、成人教育、社會培訓的教材,還可作為C語言自學者的教材或參考書。
王建中,重慶青年職業(yè)技術學院教務處副處長,從事信息化建設以及軟件工程、JSP程序設計、計算機應用基礎教學。主持過對俄引進激光捷聯(lián)慣性導航系統(tǒng)及國產(chǎn)化、國防科工委重點項目等,發(fā)表論文10余篇,其中核心期刊2篇。馬力,碩士,講師,任教于重慶青年職業(yè)技術學院,從事計算機應用的基礎教學工作多年。何東,碩士,高級工程師,任教于重慶城市職業(yè)學院,從事通信,嵌入式、物聯(lián)網(wǎng)等學科的教學工作。
第1 章 C 語言程序設計概述 1
1.1 C 語言的特點. 1
1.1.1 C 語言的發(fā)展概況. 1
1.1.2 C 程序的特點. 2
1.2 C 語言程序介紹. 2
1.2.1 C 語言程序結構. 2
1.2.2 C 語言程序中的字符集 4
1.3 C程序編譯環(huán)境、步驟和方法 6
1.3.1 Turbo C 集成開發(fā)環(huán)境. 6
1.3.2 VC6.0 集成開發(fā)環(huán)境 10
第2 章
基本語法. 15
2.1 C 語言的數(shù)據(jù)類型. 15
2.1.1 C 語言數(shù)據(jù)類型概述. 15
2.1.2 基本的數(shù)據(jù)類型. 16
2.1.3 基本數(shù)據(jù)類型的修飾. 16
2.2 常量和變量 16
2.2.1 常量 16
2.2.2 變量 17
2.3 整型數(shù)據(jù) 20
2.3.1 整型常量 20
2.3.2 整型變量 21
2.4 實型數(shù)據(jù) 23
2.4.1 實型常量 23
2.4.2 實型變量 23
2.5 浮點型 25
2.5.1 浮點型數(shù)據(jù)定義. 25
2.5.2 浮點型數(shù)據(jù)類型. 26
2.5.3 浮點型常量 27
2.5.4 浮點型變量 27
2.6 字符型數(shù)據(jù) 28
2.6.1 字符型常量 28
2.6.2 字符型變量的定義. 28
2.6.3 字符型變量的賦值. 29
2 C語言程序設計
2.6.4 字符串常量及其輸出. 29
2.7 賦值運算符與賦值表達式. 29
2.7.1 C 語言的運算符和表達式 29
2.7.2 賦值運算符和賦值表達式. 30
2.8 算術運算符與算術表達式. 31
2.8.1 基本算術運算符. 31
2.8.2 算術表達式 32
第3 章
輸入/輸出函數(shù). 33
3.1 數(shù)據(jù)的格式化輸出. 33
3.1.1 使用printf()函數(shù)格式化輸出. 33
3.1.2 格式字符 34
3.2 數(shù)據(jù)的格式化輸入. 36
3.2.1 scanf 函數(shù)的一般形式 36
3.2.2 scanf 函數(shù)中的格式聲明 37
3.2.3 使用scanf 應注意的問題. 38
3.3 字符的輸入和輸出. 38
3.3.1 使用putchar 函數(shù)輸出一個字符 38
3.3.2 用getchar 函數(shù)輸入一個字符 39
3.4 宏定義與宏替換. 40
3.4.1 簡單的宏定義 40
3.4.2 帶參數(shù)的宏定義. 40
3.4.3 #undef 的用法 41
第4 章
結構化程序設計. 42
4.1 程序算法基礎 42
4.1.1 程序設計基本概念. 42
4.1.2 算法的特性 43
4.1.3 算法的描述 45
4.1.4 程序設計方法 48
4.2 關系運算符與關系表達式. 50
4.2.1 關系運算符及其優(yōu)先級. 50
4.2.2 關系表達式 50
4.3 邏輯運算符與邏輯表達式. 51
4.3.1 邏輯運算符及其優(yōu)先級. 51
4.3.2 邏輯表達式 51
4.4 條件運算符和條件表達式. 51
4.5 順序結構程序設計. 52
4.6 選擇結構程序設計. 54
4.6.1 if 語句 55
4.6.2 switch 語句. 63
4.7 循環(huán)結構程序設計. 66
4.7.1 goto 語句及其構成的循環(huán) 67
4.7.2 while 語句 67
4.7.3 do-while 語句 70
4.7.4 for 語句 72
4.7.5 break 語句和continue 語句 74
4.7.6 循環(huán)嵌套 77
4.7.7 循環(huán)結構的綜合實例. 78
第5 章
數(shù)組 81
5.1 數(shù)組的概念 81
5.2 一維數(shù)組 81
5.2.1 一維數(shù)組的定義. 81
5.2.2 一維數(shù)組的初始化. 82
5.2.3 一維數(shù)組的引用. 83
5.2.4 一維數(shù)組的使用. 84
5.3 二維數(shù)組 89
5.3.1 二維數(shù)組的定義. 89
5.3.2 二維數(shù)組的初始化. 89
5.3.3 二維數(shù)組的引用. 90
5.3.4 二維數(shù)組的使用. 91
5.3.5 多維數(shù)組 93
5.4 字符數(shù)組 94
5.4.1 字符數(shù)組的定義. 94
5.4.2 字符數(shù)組的初始化. 94
5.4.3 字符串的輸入和輸出. 95
5.4.4 字符串函數(shù) 98
5.4.5 二維字符數(shù)組.100
5.4.6 字符數(shù)組和字符串的使用100
第6 章
指針 104
6.1 地址、指針和指針變量104
6.1.1 地址與指針.104
6.1.2 指針變量的定義105
6.1.3 指針變量的引用105
6.2 指針與函數(shù).109
6.2.1 指針作為函數(shù)的參數(shù)109
6.2.2 指向函數(shù)的指針111
6.2.3 函數(shù)的返回值是指針(返回指針的函數(shù))
.112
6.3 指針與數(shù)組.113
4 C語言程序設計
6.3.1 指針與一維數(shù)組113
6.3.2 指針與二維數(shù)組120
6.4 指針與字符串.123
6.4.1 字符串的表示與引用123
6.4.2 字符串指針作函數(shù)參數(shù)124
6.5 指針數(shù)組.125
6.6 指向指針的指針127
第7 章
函數(shù) 129
7.1 函數(shù)概述.129
7.2 函數(shù)聲明.130
7.2.1 無參函數(shù)的一般形式130
7.2.2 有參函數(shù)的一般形式130
7.3 函數(shù)的參數(shù)與函數(shù)的返回值132
7.3.1 形式參數(shù)與實際參數(shù)132
7.3.2 函數(shù)的返回值.133
7.4 函數(shù)調(diào)用.134
7.4.1 函數(shù)調(diào)用的方法134
7.4.2 函數(shù)調(diào)用時參數(shù)間的傳遞135
7.5 函數(shù)的嵌套與遞歸調(diào)用136
7.5.1 函數(shù)的嵌套調(diào)用136
7.5.2 函數(shù)的遞歸調(diào)用137
第8 章
結構體與共用體. 140
8.1 結構體類型及變量140
8.1.1 結構體類型的定義140
8.1.2 結構體變量的定義142
8.1.3 結構體變量的初始化143
8.1.4 結構體變量的引用143
8.1.5 結構體變量應用舉例145
8.2 結構體數(shù)組.146
8.2.1 結構體數(shù)組的定義146
8.2.2 結構體數(shù)組的初始化146
8.2.3 結構體數(shù)組的應用147
8.3 結構體指針.149
8.3.1 指向一個結構體變量的指針149
8.3.2 指向一個結構體數(shù)組的指針150
8.4 共用體.152
8.4.1 共用體類型的定義152
8.4.2 共用體變量的定義152
8.4.3 共用體的特點.153
8.4.4 共用體應用舉例153
8.5 枚舉.154
8.5.1 枚舉類型的定義154
8.5.2 枚舉變量的定義154
8.5.3 枚舉變量的引用155
8.5.4 枚舉應用.156
8.6 結構體應用實例157
第9 章 C 語言應用 160
9.1 常用算法.160
9.1.1 排序算法.160
9.1.2 常用運算.173
9.1.3 矩陣運算.180
9.1.4 其他運算.186
9.2 文件操作.189
9.2.1 文件.189
9.2.2 讀寫字符.190
9.2.3 文件指針.191
9.3 圖形編程.193
9.3.1 屏幕設置.193
9.3.2 學會更多的繪圖函數(shù)196
9.3.3 實現(xiàn)簡單動畫.198
9.3.4 捕獲按鍵動畫的簡單控制.201
9.4 鍵盤操作.209
9.4.1 鍵盤函數(shù)bioskey.209
9.4.2 鍵盤函數(shù)kbhit 210
9.5 C 語言常用算法211
9.5.1 串口通信分類.211
9.5.2 串口通信電氣連接213
9.5.3 串口常用函數(shù).214
9.5.4 串口程序.216
附錄A 全國計算機等級考試(二級C 語言程序設計)模擬題. 225
附錄B C 語言關鍵字. 235
附錄C C 語言運算符. 237
附錄D ASCII 值對照表 239
附錄E C 語言標準庫函數(shù) 242
參考文獻. 246