本書根據(jù)全國高等學(xué)校計(jì)算機(jī)基礎(chǔ)教育研究會發(fā)布的計(jì)算機(jī)基礎(chǔ)教育的綱領(lǐng)性文件中有關(guān)“程序設(shè)計(jì)”課程的教學(xué)要求及人才培養(yǎng)的新要求編寫而成。全書共11章,主要內(nèi)容包括C語言的基本概念、變量、運(yùn)算符、表達(dá)式、順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、數(shù)組、函數(shù)、指針、結(jié)構(gòu)體、聯(lián)合體和枚舉類型、預(yù)處理和標(biāo)準(zhǔn)函數(shù)、文件、數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)抽象。同時(shí),還將介紹程序設(shè)計(jì)的基本方法和常用算法。
本書以計(jì)算思維模式進(jìn)行計(jì)算機(jī)類課程教學(xué)的形式作為編寫指導(dǎo),內(nèi)容全面,由淺入深,詳略得當(dāng),注重實(shí)踐,實(shí)例豐富,面向應(yīng)用。各章附有適量的習(xí)題,便于自學(xué)。另外,針對書中各章內(nèi)容和上機(jī)實(shí)驗(yàn),本書還配有輔導(dǎo)教材《C語言程序設(shè)計(jì)實(shí)踐教程(第2版)》,引導(dǎo)讀者學(xué)習(xí)和掌握各章節(jié)的知識。全書貫徹傳授知識、培養(yǎng)能力、提高素質(zhì)的教學(xué)理念。
本書為高等學(xué)校非計(jì)算機(jī)專業(yè)“C語言程序設(shè)計(jì)”課程的教材,也可作為C語言初學(xué)者及計(jì)算機(jī)二級考試者和計(jì)算機(jī)工程技術(shù)人員的學(xué)習(xí)參考書。
1.語言簡單、簡練。 2.示例短小、趣味性強(qiáng)。 3.反復(fù)錘煉,編寫質(zhì)量越來越高。
第1章 C語言概述
1.1 程序與程序設(shè)計(jì)語言
1.1.1 程序與指令
1.1.2 程序設(shè)計(jì)語言的功能
1.1.3 程序設(shè)計(jì)語言的語法
1.2 C語言的發(fā)展與特點(diǎn)
1.2.1 C語言的發(fā)展
1.2.2 C語言的主要特點(diǎn)
1.3 C程序的結(jié)構(gòu)
1.3.1 簡單C程序舉例
1.3.2 C語言程序的結(jié)構(gòu)特點(diǎn)
1.3.3 書寫程序時(shí)應(yīng)遵循的規(guī)則
1.4 Visual C++ 6.0上機(jī)簡介
1.4.1 Visual C++ 6.0集成開發(fā)環(huán)境簡介
1.4.2 Visual C++ 6.0集成環(huán)境上機(jī)步驟 第1章 C語言概述
1.1 程序與程序設(shè)計(jì)語言
1.1.1 程序與指令
1.1.2 程序設(shè)計(jì)語言的功能
1.1.3 程序設(shè)計(jì)語言的語法
1.2 C語言的發(fā)展與特點(diǎn)
1.2.1 C語言的發(fā)展
1.2.2 C語言的主要特點(diǎn)
1.3 C程序的結(jié)構(gòu)
1.3.1 簡單C程序舉例
1.3.2 C語言程序的結(jié)構(gòu)特點(diǎn)
1.3.3 書寫程序時(shí)應(yīng)遵循的規(guī)則
1.4 Visual C++ 6.0上機(jī)簡介
1.4.1 Visual C++ 6.0集成開發(fā)環(huán)境簡介
1.4.2 Visual C++ 6.0集成環(huán)境上機(jī)步驟
小結(jié)
習(xí)題
第2章 基本數(shù)據(jù)類型和運(yùn)算符
2.1 基本數(shù)據(jù)類型
2.1.1 常量和變量的概念
2.1.2 整型
2.1.3 實(shí)型
2.1.4 字符型
2.1.5 字符串
2.2 數(shù)據(jù)的存儲
2.2.1 整型數(shù)據(jù)的存儲
2.2.2 實(shí)型數(shù)據(jù)的存儲
2.2.3 字符型數(shù)據(jù)的存儲
2.3 運(yùn)算符和表達(dá)式
2.3.1 算術(shù)運(yùn)算符與算術(shù)表達(dá)式
2.3.2 賦值運(yùn)算符與賦值表達(dá)式
2.3.3 位運(yùn)算符及其表達(dá)式
2.3.4 增量運(yùn)算符與增量表達(dá)式
2.3.5 關(guān)系運(yùn)算符與關(guān)系表達(dá)式
2.3.6 邏輯運(yùn)算符與邏輯表達(dá)式
2.3.7 條件運(yùn)算符與條件表達(dá)式
2.3.8 逗號運(yùn)算符與逗號表達(dá)式
2.3.9 其他運(yùn)算符
2.3.10 運(yùn)算符的優(yōu)先級與結(jié)合性
2.3 數(shù)據(jù)類型的轉(zhuǎn)換
2.3.1 自動轉(zhuǎn)換
2.3.2 賦值轉(zhuǎn)換
2.3.3 強(qiáng)制類型轉(zhuǎn)換
小結(jié)
習(xí)題
第3章 順序和選擇結(jié)構(gòu)程序設(shè)計(jì)
3.1 程序設(shè)計(jì)概述
3.1.1 程序設(shè)計(jì)基本步驟
3.1.2 C語言編寫風(fēng)格
3.1.3 程序的語句
3.2 數(shù)據(jù)的輸入/輸出
3.2.1 數(shù)據(jù)的輸入
3.2.2 scanf()函數(shù)的調(diào)用
3.2.3 scanf()函數(shù)使用中常見的問題
3.2.4 getchar()函數(shù)
3.2.5 putchar()函數(shù)
3.3 程序的3種基本結(jié)構(gòu)
3.4 if選擇結(jié)構(gòu)語句
3.4.1 if語句的3種形式
3.4.2 if語句的嵌套
3.5 switch選擇結(jié)構(gòu)語句
3.6 程序設(shè)計(jì)舉例
小結(jié)
習(xí)題
第4章 循環(huán)結(jié)構(gòu)程序設(shè)計(jì)
4.1 for循環(huán)
4.2 while循環(huán)
4.3 do-while循環(huán)
4.4 三種循環(huán)語句的比較
4.5 跳轉(zhuǎn)語句
4.5.1 break語句
4.5.2 continue語句
4.5.3 goto語句
4.6 循環(huán)語句的嵌套
4.7 程序設(shè)計(jì)舉例
小結(jié)
習(xí)題
第5章 數(shù)組
5.1 一維數(shù)組
5.1.1 一維數(shù)組的定義
5.1.2 一維數(shù)組元素的引用
5.1.3 一維數(shù)組元素的初始化
5.2 二維數(shù)組
5.2.1 二維數(shù)組的定義
5.2.2 二維數(shù)組元素的引用
5.2.3 二維數(shù)組元素的初始化
5.3 字符型數(shù)組
5.3.1 字符數(shù)組的定義
5.3.2 字符數(shù)組的引用
5.3.3 字符數(shù)組的初始化
5.3.4 字符串及其結(jié)束標(biāo)志
5.3.5 字符數(shù)組的輸入/輸出
5.3.6 常用的字符串處理函數(shù)
5.4 使用數(shù)組的程序設(shè)計(jì)方法
5.4.1 排序
5.4.2 查找
5.5 程序設(shè)計(jì)舉例
小結(jié)
習(xí)題
第6章 函數(shù)和模塊設(shè)計(jì)
6.1 結(jié)構(gòu)化程序設(shè)計(jì)
6.1.1 結(jié)構(gòu)化程序設(shè)計(jì)的基本概念
6.1.2 結(jié)構(gòu)化程序設(shè)計(jì)的基本特征
6.2 函數(shù)的定義和調(diào)用
6.2.1 函數(shù)的定義
6.2.2 函數(shù)的調(diào)用
6.2.3 函數(shù)的返回值
6.2.4 函數(shù)參數(shù)及函數(shù)間的數(shù)據(jù)傳遞
6.3 函數(shù)的嵌套調(diào)用和遞歸調(diào)用
6.3.1 函數(shù)的嵌套調(diào)用
6.3.2 函數(shù)的遞歸調(diào)用
6.4 作用域和存儲類型
6.5 內(nèi)部函數(shù)和外部函數(shù)
6.5.1 內(nèi)部函數(shù)
6.5.2 外部函數(shù)
6.6 模塊化程序設(shè)計(jì)
6.6.1 模塊化程序設(shè)計(jì)方法的指導(dǎo)思想
6.6.2 模塊分解的原則
6.7 程序設(shè)計(jì)舉例
小結(jié)
習(xí)題
第7章 指針
7.1 指針的概念
7.1.1 地址與指針
7.1.2 指針變量的定義和引用
7.1.3 指針變量的運(yùn)算
7.2 指針變量作為函數(shù)參數(shù)
7.3 指針與一維數(shù)組
7.3.1 一維數(shù)組的指針表示
7.3.2 數(shù)組作函數(shù)參數(shù)時(shí)的指針表示
7.3.3 字符串的指針表示
7.4 指針與多維數(shù)組
7.4.1 多維數(shù)組的處理
7.4.2 指向多維數(shù)組的指針
7.5 指針數(shù)組和多級指針
7.5.1 指針數(shù)組的概念
7.5.2 指針數(shù)組的應(yīng)用
7.5.3 多級指針(指向指針的指針)
7.6 指針與函數(shù)
7.6.1 指向函數(shù)的指針
7.6.2 函數(shù)指針的應(yīng)用
7.6.3 返回指針的函數(shù)
7.7 命令行參數(shù)
小結(jié)
習(xí)題
第8章 結(jié)構(gòu)體與聯(lián)合體
8.1 結(jié)構(gòu)體
8.1.1 結(jié)構(gòu)體類型的定義
8.1.2 結(jié)構(gòu)體類型變量的定義與使用
8.1.3 結(jié)構(gòu)體類型變量的賦值與初始化
8.1.4 結(jié)構(gòu)體類型數(shù)組的定義與引用
8.1.5 結(jié)構(gòu)體類型指針的定義與引用
8.1.6 結(jié)構(gòu)體類型數(shù)據(jù)的動態(tài)存儲分配
8.1.7 鏈表及其基本操作
8.2 聯(lián)合體
8.3 其他自定義數(shù)據(jù)類型
8.3.1 枚舉類型
8.3.2 類型定義符typedef
小結(jié)
習(xí)題
第9章 預(yù)處理和標(biāo)準(zhǔn)函數(shù)
9.1 預(yù)處理命令
9.1.1 宏定義
9.1.2 文件包含
9.1.3 條件編譯
9.2 輸入/輸出標(biāo)準(zhǔn)函數(shù)
9.2.1 格式輸出函數(shù)
9.2.2 格式輸入函數(shù)
9.3 自定義頭文件設(shè)計(jì)的原則
小結(jié)
習(xí)題
第10章 文件
10.1 問題的引入
10.2 文件的基本概念
10.3 內(nèi)存與外存的數(shù)據(jù)交流
10.4 程序針對文件的基本操作
10.4.1 打開文件
10.4.2 關(guān)閉文件
10.4.3 文件的讀寫
10.4.4 文件檢測函數(shù)
10.5 程序調(diào)試與數(shù)據(jù)測試文件
10.6 程序設(shè)計(jì)舉例
小結(jié)
習(xí)題
第11章 數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)抽象
11.1 數(shù)據(jù)抽象
11.1.1 數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)類型
11.1.2 抽象數(shù)據(jù)類型
11.2 線性表
11.2.1 線性表的定義
11.2.2 線性表的基本操作
11.2.3 線性表的順序存儲
11.2.4 順序表上基本運(yùn)算的實(shí)現(xiàn)
11.3 堆棧
11.3.1 抽象棧的定義及基本操作
11.3.2 抽象棧的定義
11.3.3 順序棧的基本運(yùn)算的實(shí)現(xiàn)
11.4 隊(duì)列
11.4.1 隊(duì)列的定義
11.4.2 隊(duì)列的存儲結(jié)構(gòu)及其相關(guān)算法
小結(jié)
習(xí)題
附錄A ASCII代碼對照表
附錄B C庫函數(shù)
附錄C Debugger調(diào)試器使用簡介
參考文獻(xiàn)