本書系統(tǒng)地介紹了基礎(chǔ)Visual C++的C語言開發(fā)環(huán)境、數(shù)據(jù)類型與表達(dá)式、基本輸入/輸出語句、流程控制、模塊化程序設(shè)計方法和文件系統(tǒng)的基本操作。
適讀人群 :非計算機類本科
1.知識點精煉,適合短學(xué)時教學(xué)
2.通過精彩案例融合知識點
3.以提高讀者分析問題和獨立思考問題的能力為目標(biāo)
C語言是目前國際上廣泛流行的一種結(jié)構(gòu)化的程序設(shè)計語言,它同時具有高級語言和低級語言的功能,提供類型豐富、使用靈活的基本運算和數(shù)據(jù)類型,具有較高的可移植性。C語言不僅適合于開發(fā)系統(tǒng)軟件,而且是開發(fā)應(yīng)用軟件和進行大規(guī)模科學(xué)計算的常用程序設(shè)計語言。
本書由淺入深、循序漸進地介紹了C語言程序設(shè)計的思路和方法。全書共10章,系統(tǒng)地介紹了基于VisualC++的C語言開發(fā)環(huán)境、數(shù)據(jù)類型與表達(dá)式、基本輸入/輸出語句、流程控制、模塊化程序設(shè)計方法和文件系統(tǒng)的基本操作。
本書主要特點如下。
1知識點精煉,適合短學(xué)時教學(xué)現(xiàn)在,很多高校都在對課程進行學(xué)時壓縮,而C語言程序設(shè)計課程的知識點又很繁多,為了讓讀者在短時間內(nèi)可以掌握C語言程序設(shè)計的精髓,作者對各個章節(jié)中的知識點進行了提煉,對一些不常用甚至幾乎從來不用的知識點進行了刪減。因此,本教材能夠滿足短學(xué)時教學(xué)的需要。
2案例新穎,趣味性強教材中的每個案例都由作者精心設(shè)計,趣味性較強,通過這些案例,不僅可以提高讀者的學(xué)習(xí)興趣,而且可以使讀者對所學(xué)知識點舉一反三,從而使讀者更深刻地理解所學(xué)習(xí)的知識點。
3通過精彩案例融合知識點很多C語言教材都是以介紹C語言的單個知識點為主,這樣就會造成讀者無法將C語言的知識點融為一個整體。為了解決這個問題,本書不僅為各個知識點都設(shè)計了案例,而且每一章還有精彩案例分析。這些精彩案例將本章的知識點以及前面各章的知識點綜合起來,使讀者能夠直觀地將這些知識點融為一體。
4以提高讀者分析問題和獨立思考問題的能力為目標(biāo)讀者在學(xué)習(xí)的過程中,經(jīng)常會遇到這樣的問題:教材的例子能看懂,教師講的內(nèi)容也能聽明白,就是遇到問題時無從下手。為了解決這個問題,本書先對案例進行分析,以提高讀者分析問題的能力;然后寫代碼,并在代碼中給出大量的注釋;最后,在案例的后面會提出一些思考題,以提高讀者獨立思考問題的能力。
5內(nèi)容安排循序漸進、由易到難本書內(nèi)容安排循序漸進、由易到難,共10章。第1章介紹了C語言的基本知識和開發(fā)環(huán)境的使用;第2章介紹了C語言基本數(shù)據(jù)類型與表達(dá)式;第3章介紹了C語言的輸入/輸出語句;第4、5章介紹了C語言的控制結(jié)構(gòu);第6章介紹了函數(shù)和模塊化程序設(shè)計的思想;第7、8章介紹了數(shù)組和指針的應(yīng)用;第9章介紹了結(jié)構(gòu)體和共用體類型;第10章介紹了C語言文件操作。
本書由李俊主編并進行總體設(shè)計。劉玉玲編寫第1章和第2章;武戎編寫第3章;郭字周編寫第4章和第5章;尹勝彬編寫第6章;張小莉編寫第7章;李俊編寫第8~10章。
由于作者的水平有限,書中疏漏之處在所難免,敬請讀者批評指正。
出版說明
前言
第1章 C語言程序設(shè)計概述
1.1 C語言的發(fā)展及特點
1.1.1 C語言的發(fā)展
1.1.2 C語言的特點
1.2 C語言程序的基本結(jié)構(gòu)
1.3 C語言字符集、標(biāo)識符與關(guān)鍵字
1.3.1 C語言字符集
1.3.2 C語言標(biāo)識符與關(guān)鍵字
1.4 C語言程序的開發(fā)環(huán)境
1.4.1 C語言開發(fā)過程
1.4.2 Microsoft Visual C++ 6.0集成開發(fā)環(huán)境
本章小結(jié)
習(xí)題
第2章 數(shù)據(jù)類型、運算符與表達(dá)式
2.1 C語言的數(shù)據(jù)類型
2.1.1 數(shù)據(jù)類型概述
2.1.2 整數(shù)類型
2.1.3 實數(shù)類型
2.1.4 字符類型
2.2 常量與變量
2.2.1 常量
2.2.2 變量
2.3 運算符和表達(dá)式
2.3.1 算術(shù)運算符和算術(shù)表達(dá)式
2.3.2 賦值運算符和賦值表達(dá)式
2.3.3 關(guān)系運算符和關(guān)系表達(dá)式
2.3.4 邏輯運算符與邏輯表達(dá)式
2.3.5 條件運算符、逗號運算符和求字節(jié)運算符
2.4 運算符的優(yōu)先級
2.5 數(shù)據(jù)類型轉(zhuǎn)換
2.5.1 自動類型轉(zhuǎn)換
2.5.2 強制類型轉(zhuǎn)換
本章小結(jié)
習(xí)題
第3章 順序結(jié)構(gòu)
3.1 算法
3.1.1 算法的概念
3.1.2 算法的組成要素
3.1.3 算法的描述
3.2 C語言基本語句
3.3 數(shù)據(jù)的輸入/輸出
3.3.1 字符數(shù)據(jù)的輸入/輸出
3.3.2 格式化輸出函數(shù)printf
3.3.3 格式化輸入函數(shù)scanf
3.4 精彩案例
3.4.1 溫度轉(zhuǎn)換
3.4.2 進制轉(zhuǎn)換
3.4.3 大小寫字符轉(zhuǎn)換
3.4.4 計算圓的周長和面積
本章小結(jié)
習(xí)題
第4章 選擇結(jié)構(gòu)
4.1 if語句
4.1.1 單分支if語句
4.1.2 雙分支if語句
4.1.3 多分支if語句
4.1.4 if語句的嵌套
4.2 條件運算符
4.3 switch語句
4.4 精彩案例
4.4.1 計算個人所得稅
4.4.2 體質(zhì)指數(shù)(BMI)計算
4.4.3 判斷閏年
4.4.4 模擬計算器
本章小結(jié)
習(xí)題
第5章 循環(huán)結(jié)構(gòu)
5.1 循環(huán)結(jié)構(gòu)算法
5.2 while語句
5.3 do-while語句
5.4 for語句
5.5 break語句和continue語句
5.5.1 break語句
5.5.2 continue語句
5.6 循環(huán)結(jié)構(gòu)的嵌套
5.7 精彩案例
5.7.1 猴子吃桃
5.7.2 整數(shù)質(zhì)因子分解
5.7.3 電文加密
5.7.4 打印菱形
本章小結(jié)
習(xí)題
第6章 函數(shù)與宏替換
6.1 模塊化設(shè)計
6.2 函數(shù)的定義與調(diào)用
6.2.1 函數(shù)的定義
6.2.2 函數(shù)的調(diào)用
6.2.3 參數(shù)的傳遞
6.3 函數(shù)的遞歸調(diào)用
6.4 變量的作用域和存儲類型
6.4.1 變量的作用域
6.4.2 變量的存儲類型
6.5 宏替換和文件包含
6.5.1 宏替換
6.5.2 文件包含
6.6 精彩案例
6.6.1 判斷回文數(shù)
6.6.2 判斷完數(shù)
6.6.3 斐波那契數(shù)列
本章小結(jié)
習(xí)題
第7章 數(shù)組
7.1 概述
7.2 一維數(shù)組
7.2.1 一維數(shù)組的定義
7.2.2 一維數(shù)組的初始化
7.2.3 一維數(shù)組的引用
7.2.4 一維數(shù)組應(yīng)用
7.3 二維數(shù)組
7.3.1 二維數(shù)組的定義
7.3.2 二維數(shù)組的初始化
7.3.3 二維數(shù)組的引用
7.3.4 二維數(shù)組應(yīng)用
7.4 字符數(shù)組與字符串
7.4.1 字符數(shù)組的定義與初始化
7.4.2 字符串的概念及存儲
7.4.3 字符數(shù)組的輸入/輸出
7.4.4 字符串處理函數(shù)
7.4.5 字符數(shù)組應(yīng)用
7.5 數(shù)組作為函數(shù)參數(shù)
7.6 精彩案例
7.6.1 身份證號的奧秘
7.6.2 字符串連接
7.6.3 刪除字符
7.6.4 統(tǒng)計單詞個數(shù)
本章小結(jié)
習(xí)題
第8章 指針
8.1 指針與指針變量
8.1.1 指針的概念
8.1.2 指針變量的定義與初始化
8.1.3 指針運算
8.2 指針與數(shù)組
8.2.1 一維數(shù)組的指針表示法
8.2.2 二維數(shù)組的指針表示法
8.3 指針與字符串
8.3.1 字符串的指針表示方法
8.3.2 字符串?dāng)?shù)組與指針數(shù)組
8.4 指針與函數(shù)
8.4.1 指針作為函數(shù)的形參
8.4.2 指針型函數(shù)
8.5 指向指針的指針變量
8.6 精彩案例
8.6.1 數(shù)字查找
8.6.2 字符串截取
8.6.3 字符串查找
本章小結(jié)
習(xí)題
第9章 結(jié)構(gòu)體與共用體
9.1 結(jié)構(gòu)體類型的定義
9.2 結(jié)構(gòu)體變量
9.2.1 結(jié)構(gòu)體變量的定義
9.2.2 結(jié)構(gòu)體變量的使用
9.2.3 結(jié)構(gòu)體變量的初始化
9.3 結(jié)構(gòu)體數(shù)組
9.3.1 結(jié)構(gòu)體數(shù)組的定義
9.3.2 結(jié)構(gòu)體數(shù)組的初始化
9.3.3 結(jié)構(gòu)體數(shù)組的使用
9.4 結(jié)構(gòu)體類型指針
9.4.1 指向結(jié)構(gòu)體變量的指針
9.4.2 指向結(jié)構(gòu)體數(shù)組的指針
9.5 結(jié)構(gòu)體與函數(shù)
9.5.1 結(jié)構(gòu)體變量作為函數(shù)參數(shù)
9.5.2 結(jié)構(gòu)體指針變量作為函數(shù)參數(shù)
9.5.3 函數(shù)的返回值為結(jié)構(gòu)體類型
9.6 鏈表
9.6.1 鏈表概述
9.6.2 內(nèi)存動態(tài)管理函數(shù)
9.6.3 鏈表的基本操作
9.7 共用體類型
9.7.1 共用體類型與共用體變量
9.7.2 共用體變量的使用
9.8 精彩案例
9.8.1 鏈表存儲職工信息
9.8.2 鏈表翻轉(zhuǎn)
本章小結(jié)
習(xí)題
第10章 文件
10.1 文件概述
10.2 文件的打開與關(guān)閉
10.2.1 文件指針
10.2.2 文件的打開
10.2.3 文件的關(guān)閉
10.3 文件讀寫函數(shù)
10.3.1 讀寫文件字符函數(shù)
10.3.2 讀寫文件字符串函數(shù)
10.3.3 格式化讀寫
10.3.4 塊讀寫
10.4 文件定位與隨機讀寫
10.5 文件檢測函數(shù)
10.6 精彩案例
10.6.1 文件加密
10.6.2 成績信息管理
本章小結(jié)
習(xí)題
附錄
附錄A ASCII碼表
附錄B C語言運算符優(yōu)先級和結(jié)合方向
附錄C C語言常見的出錯信息
附錄D C語言常用算法
附錄E C語言常用庫函數(shù)