C語言程序設(shè)計(第二版)
-
【作 者】主 編 馬曉晨 衡軍山
【I S B N 】978-7-5170-0177-5
【責(zé)任編輯】李炎
【適用讀者群】高職高專
【出版時間】2012-09-26
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第2版第1次印刷
【頁 數(shù)】232
【千字?jǐn)?shù)】352
【印 張】14.5
【定 價】¥26
【叢 書】國家精品課程配套教材系列
【備注信息】
簡介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書較全面地介紹了C語言的基礎(chǔ)知識、基本語法和編程方法,深入淺出地講述了C語言程序設(shè)計方法,以培養(yǎng)和提高學(xué)生對C語言的應(yīng)用能力為主要目的,符合計算機等級考試大綱的要求。全書共12章,分為入門篇、基礎(chǔ)篇和提高篇三個部分,內(nèi)容包括C語言概述;C語言基礎(chǔ)知識;簡單程序設(shè)計;if語句的嵌套及多分支程序設(shè)計;循環(huán)結(jié)構(gòu)程序設(shè)計;數(shù)組;函數(shù);指針;編譯預(yù)處理;位運算;結(jié)構(gòu)體、共用體和用戶自定義類型;文件。為了提高學(xué)習(xí)效率,每一章都加入了導(dǎo)學(xué)。
本書配套有《C語言程序設(shè)計綜合實訓(xùn)》(第二版),除了可作為高等院校“C語言程序設(shè)計”課程教材之外,還可以作為培訓(xùn)教材和自學(xué)參考書。
本書是國家級精品課程“C語言程序設(shè)計”的配套教材,擁有非常豐富的網(wǎng)上教學(xué)資源,讀者可以通過地址http://121.26.225.8/jpkc/cyuyan/index.htm訪問相關(guān)資源。
本書配有免費電子教案,讀者可以到中國水利水電出版社和萬水書苑的網(wǎng)站上免費下載,網(wǎng)址為:http://www.waterpub.com.cn/softdown/和http://mightybasket.cn。
本書在第一版的基礎(chǔ)上除了對很多細(xì)節(jié)、例題進(jìn)行修改外,還針對目前的高職高專教學(xué)現(xiàn)狀進(jìn)行了結(jié)構(gòu)上的改進(jìn),豐富了綜合應(yīng)用實例。第二版分為入門篇、基礎(chǔ)篇和提高篇三個部分。
淡化語法,強調(diào)應(yīng)用——從具體問題入手,努力把枯燥無味的語言講得生動、活潑。讓學(xué)生明白如何分析并解決實際問題,逐漸培養(yǎng)學(xué)生程序設(shè)計的正確思維模式。
通俗性、可接受性強——由例題引出一種語法規(guī)則,通過一些求解具體問題的程序來分析算法,介紹程序設(shè)計的基本方法和技巧,既注重系統(tǒng)性、科學(xué)性,又注重易讀性和啟發(fā)性。
“C語言程序設(shè)計”是大部分計算機類專業(yè)的必修課程,也是很多非計算機類專業(yè)開設(shè)的程序設(shè)計基礎(chǔ)課程。作為計算機類的專業(yè)基礎(chǔ)課,目的是使學(xué)生掌握程序設(shè)計的基本方法并逐步形成正確的程序設(shè)計思想,能夠熟練地使用C語言進(jìn)行程序設(shè)計并具備調(diào)試程序的能力,為后續(xù)課程及其他程序設(shè)計課程的學(xué)習(xí)和應(yīng)用打下基礎(chǔ)。對于非計算機專業(yè)來說,該課程有實際應(yīng)用價值,為用計算機解決實際問題提供了方法,是后續(xù)理論和實踐教學(xué)的基礎(chǔ)和重要工具,同時也是計算機等級考試二級所要求的課程之一。
作為一門計算機語言,對于初學(xué)者來說在思維方式上需要跨越心理上和思維方式上的障礙,需要逐步理解程序設(shè)計思想。如果像其他課程按照常規(guī)方法進(jìn)行教學(xué),隨著課程的不斷深入,大量的規(guī)則、定義、要求和機械的格式出現(xiàn)后,很容易使學(xué)生產(chǎn)生枯燥無味的感覺。而從本質(zhì)上來說,計算機語言就是一個利用計算機去解決問題的工具,這就像我們在學(xué)如何使用螺絲刀時需要掌握的是如何去用螺絲刀擰螺絲,而不是學(xué)習(xí)螺絲刀的制作方法、研究螺絲刀的形狀結(jié)構(gòu)以及螺絲刀的制作材料等。我們培養(yǎng)學(xué)生的主要目的是使學(xué)生掌握C語言的使用方法,讓學(xué)生真正具有利用C語言解決實際問題的能力,而不是讓學(xué)生了解很多C語言的細(xì)節(jié)和原理,這一點對于高職高專學(xué)生尤其重要,培養(yǎng)學(xué)生自主學(xué)習(xí)和應(yīng)用C語言解決實際問題比讓學(xué)生精通掌握C語言語法重要得多。
因此,在編寫本書時,“淡化語法,強調(diào)應(yīng)用”是我們堅持的一個原則,但是考慮到本書的適用范圍,很多教師多年來的傳統(tǒng)教學(xué)思想和習(xí)慣不一定能夠很快適應(yīng)新的教學(xué)方法,在編寫過程中充分分析了這一點,以盡量適合不同風(fēng)格的教學(xué)方法。所以本書在保持傳統(tǒng)教材特點的基礎(chǔ)上,注入了新的教學(xué)思想和方法,力爭改變過去先給出定義和規(guī)則的講授辦法,從具體問題入手,努力把枯燥無味的語言講得生動、活潑。讓學(xué)生明白如何分析并解決實際問題,逐漸培養(yǎng)學(xué)生程序設(shè)計的正確思維模式。在每一章中都加入了“導(dǎo)學(xué)”, 其目的除了為教師提示教學(xué)思想和方法之外,更重要的是,在學(xué)習(xí)新知識之前,引導(dǎo)學(xué)生認(rèn)識學(xué)習(xí)的目的、學(xué)習(xí)的重點,并通過實例讓他們對新知識的功能、方法和程序運行結(jié)果有一個感性認(rèn)識(在閱讀導(dǎo)學(xué)時,其中的實例只需感受不需理解和掌握),使學(xué)習(xí)目標(biāo)更明確,學(xué)習(xí)更有針對性,更高效地掌握知識,培養(yǎng)解決問題的能力。“導(dǎo)學(xué)”可以很好地指導(dǎo)學(xué)生進(jìn)行課前自學(xué)。
由于大部分學(xué)生是第一次接受計算機語言,教材注重“通俗性、可接受性”的原則。沒有把重點放在語法規(guī)則的敘述上,而是放在程序設(shè)計方法上,通常由例題引出一種語法規(guī)則,通過一些求解具體問題的程序來分析算法,介紹程序設(shè)計的基本方法和技巧,既注重教材的系統(tǒng)性、科學(xué)性,又注重易讀性和啟發(fā)性。從最簡單的問題入手,一開始就介紹程序,通過編寫、運行程序來掌握語言的規(guī)定和程序設(shè)計的方法,然后再分析一些語法細(xì)節(jié)。在選擇例題時也是由簡到難逐步呈現(xiàn)給學(xué)生。
本書在第一版的基礎(chǔ)上除了對很多細(xì)節(jié)、例題進(jìn)行修改外,還針對目前的高職高專教學(xué)現(xiàn)狀進(jìn)行了結(jié)構(gòu)上的改進(jìn),豐富了綜合應(yīng)用實例。第二版分為入門篇、基礎(chǔ)篇和提高篇三個部分,“入門篇”可以使學(xué)生掌握最基本的程序設(shè)計方法,能夠編寫簡單的應(yīng)用程序,為了讓學(xué)生編寫比較完整的程序,在入門篇中介紹了最基本的選擇結(jié)構(gòu)的使用方法。“基礎(chǔ)篇”的內(nèi)容體現(xiàn)了一門高級語言的絕大部分知識,可以使學(xué)生了解和把握一門高級語言的大部分知識點,如果不使用C語言進(jìn)行較深入的程序設(shè)計,單從高級語言知識和編寫一般的應(yīng)用程序的角度來看內(nèi)容已經(jīng)基本夠用了。“提高篇”重點講解有關(guān)C語言的高級應(yīng)用,內(nèi)容偏難,教師可根據(jù)需要對內(nèi)容適度增減。由于不同學(xué)校、不同專業(yè)的教學(xué)目標(biāo)不同,課程開設(shè)的學(xué)時數(shù)區(qū)別較大,教材結(jié)構(gòu)上的改進(jìn),更加便于教師在教學(xué)過程中把握教學(xué)內(nèi)容及分配課時。
本書是國家級精品課程“C語言程序設(shè)計”的配套教材,擁有非常豐富的網(wǎng)上教學(xué)資源(包括:教學(xué)大綱、授課/實驗計劃、課件(PPT及Flash課件)、授課教案、實踐(實驗/實訓(xùn)/實習(xí))指導(dǎo)、習(xí)題及參考答案、課程試卷及參考答案、教學(xué)錄像等),讀者可以通過地址http://121.26.225.8/jpkc/cyuyan/index.htm訪問相關(guān)資源,也可以登錄www.cdpc.edu.cn進(jìn)入精品課程專題或登錄國家精品課程資源網(wǎng)(http://www.jingpinke.com/)。
為了方便讀者,在以本書作為主教材的基礎(chǔ)上,還編寫了《C語言程序設(shè)計綜合實訓(xùn)》(第二版)作為上機指導(dǎo)和能力提升的輔助教材,書中精心編寫了大量的習(xí)題。
本書由馬曉晨、衡軍山任主編,鄭陽平、蘇建華任副主編。在本書的編寫工作中,馬曉晨對全書進(jìn)行了編寫、設(shè)計、修改和統(tǒng)稿,衡軍山參與了第7、8、9、10、11、12章的編寫,鄭陽平參與了第1、2、3、4章的編寫,蘇建華參與了第5、6章的編寫,王賀艷和高麗參與了書中部分綜合應(yīng)用實例的編寫。
另外,王學(xué)軍、宋漢珍、王永紅、景妮、馬秋菊、于貴賓、董正發(fā)等也對本書的資源建設(shè)等做了大量工作,在此對他們表示感謝。
編 者
2012年7月
第一部分 入門篇
第1章 C語言概述 2
1.1 C語言的歷史 2
1.2 C語言的特點 3
1.3 程序和程序設(shè)計語言 4
1.3.1 程序和程序設(shè)計 4
1.3.2 程序設(shè)計語言 4
1.4 簡單的C程序介紹 5
1.4.1 認(rèn)識C語言程序 5
1.4.2 分析C語言程序的結(jié)構(gòu)特點 6
1.4.3 說明C程序書寫規(guī)則 7
1.4.4 理解C程序的編譯和運行 7
1.4.5 掌握開發(fā)程序的過程 8
1.5 Visual C++集成開發(fā)環(huán)境簡介 9
1.5.1 Microsoft Visual C++ 6.0 簡介 9
1.5.2 Microsoft Visual C++ 6.0集成開發(fā)
環(huán)境 10
1.6 常用調(diào)試手段簡介 15
本章小結(jié) 17
習(xí)題1 17
第2章 C語言基礎(chǔ)知識 18
2.1 C語言的詞法符號 19
2.1.1 關(guān)鍵字 19
2.1.2 標(biāo)識符 19
2.1.3 分隔符 20
2.2 C語言的數(shù)據(jù)類型 20
2.2.1 整型 20
2.2.2 浮點型 21
2.2.3 字符型 22
2.3 常量與變量 22
2.3.1 常量 22
2.3.2 變量 24
2.4 算數(shù)運算與賦值 26
2.4.1 算術(shù)運算符和算術(shù)表達(dá)式 26
2.4.2 賦值運算符和賦值表達(dá)式 28
2.5 綜合應(yīng)用實例 29
本章小結(jié) 30
習(xí)題2 30
第3章 簡單程序設(shè)計 32
3.1 C語句概述 34
3.2 數(shù)據(jù)輸出與輸入 35
3.2.1 printf函數(shù) 35
3.2.2 scanf函數(shù) 38
3.3 字符輸入輸出函數(shù) 39
3.4 關(guān)系表達(dá)式和邏輯表達(dá)式 40
3.4.1 關(guān)系運算符及其表達(dá)式 40
3.4.2 邏輯運算符及其表達(dá)式 40
3.5 流程圖簡介 42
3.6 簡單的if語句 43
3.6.1 單分支if語句 43
3.6.2 雙分支if…else語句 44
3.7 C語言中幾個特殊知識點 46
3.7.1 類型轉(zhuǎn)換 46
3.7.2 逗號運算符和逗號表達(dá)式 47
3.7.3 條件表達(dá)式 48
3.8 綜合應(yīng)用實例 48
3.8.1 程序分析 48
3.8.2 應(yīng)用實例 51
本章小結(jié) 55
習(xí)題3 55
第二部分 基礎(chǔ)篇
第4章 if語句的嵌套及多分支程序設(shè)計 58
4.1 if語句的嵌套 58
4.2 switch語句 62
4.3 綜合應(yīng)用實例 64
4.3.1 程序分析 64
4.3.2 應(yīng)用實例 66
本章小結(jié) 70
習(xí)題4 71
第5章 循環(huán)結(jié)構(gòu)程序設(shè)計 72
5.1 for循環(huán) 73
5.2 while、do…while循環(huán) 76
5.2.1 while循環(huán) 76
5.2.2 do…while循環(huán) 78
5.2.3 while循環(huán)與do…while循環(huán)語句
的區(qū)別 79
5.3 三種循環(huán)語句的比較 80
5.3.1 三種循環(huán)語句的比較 80
5.3.2 循環(huán)的嵌套 80
5.4 循環(huán)控制語句 82
5.5 for循環(huán)語句的特殊格式 83
5.6 綜合應(yīng)用實例 85
5.6.1 程序分析 85
5.6.2 應(yīng)用實例 88
本章小結(jié) 90
習(xí)題5 91
第6章 數(shù)組 92
6.1 數(shù)組的定義和引用 93
6.1.1 數(shù)組的概念 93
6.1.2 一維數(shù)組 93
6.1.3 一維數(shù)組應(yīng)用 95
6.2 二維數(shù)組 97
6.2.1 二維數(shù)組 97
6.2.2 二維數(shù)組應(yīng)用 98
6.3 字符數(shù)組 99
6.3.1 字符數(shù)組 100
6.3.2 字符串 100
6.3.3 字符數(shù)組應(yīng)用 103
6.4 綜合應(yīng)用實例 104
6.4.1 程序分析 104
6.4.2 應(yīng)用實例 106
本章小結(jié) 110
習(xí)題6 110
第7章 函數(shù) 111
7.1 函數(shù)概述 112
7.1.1 函數(shù)的概念 112
7.1.2 函數(shù)的分類 112
7.1.3 函數(shù)的定義 113
7.1.4 函數(shù)的調(diào)用 114
7.2 函數(shù)的參數(shù)、變量的存儲域和作用域 117
7.2.1 函數(shù)的參數(shù) 117
7.2.2 函數(shù)調(diào)用中的數(shù)據(jù)傳遞方法 120
7.2.3 變量的存儲域和作用域、局部
變量和全局變量 120
7.3 函數(shù)的嵌套調(diào)用和遞歸調(diào)用 125
7.3.1 函數(shù)的嵌套調(diào)用 125
7.3.2 函數(shù)的遞歸調(diào)用 126
7.4 綜合應(yīng)用實例 129
本章小結(jié) 131
習(xí)題7 132
第三部分 提高篇
第8章 指針 134
8.1 指針和指針變量 135
8.1.1 什么是指針變量 135
8.1.2 指針變量的定義和初始化 136
8.1.3 指針變量的使用 136
8.2 指針與函數(shù) 138
8.2.1 指針變量用作函數(shù)參數(shù) 139
8.2.2 返回指針值的函數(shù) 140
8.2.3 函數(shù)的指針和指向函數(shù)的指針
變量 141
8.3 指針與數(shù)組 143
8.3.1 指向一維數(shù)組的指針變量 143
8.3.2 指向二維數(shù)組的指針變量 147
8.4 指向字符串的指針變量 151
8.5 指針數(shù)組和指向指針的指針變量 152
8.5.1 指針數(shù)組 152
8.5.2 指向指針的指針變量 153
8.5.3 main函數(shù)的參數(shù) 154
8.6 綜合應(yīng)用實例 155
8.6.1 程序分析 155
8.6.2 應(yīng)用實例 157
本章小結(jié) 160
習(xí)題8 161
第9章 編譯預(yù)處理 163
9.1 宏定義 164
9.1.1 不帶參數(shù)的宏定義 164
9.1.2 帶參數(shù)的宏定義 165
9.2 文件包含 166
9.3 條件編譯 167
9.4 綜合應(yīng)用實例 168
本章小結(jié) 170
習(xí)題9 170
第10章 位運算 171
10.1 位運算符 171
10.2 位運算符的運算功能 172
10.2.1 基本位運算 172
10.2.2 擴展位運算 174
10.3 綜合應(yīng)用實例 174
本章小結(jié) 176
習(xí)題10 176
第11章 結(jié)構(gòu)體、共用體和用戶自定義類型 177
11.1 結(jié)構(gòu)體類型的基本使用 178
11.1.1 結(jié)構(gòu)體類型的說明 178
11.1.2 結(jié)構(gòu)體變量定義及其初始化 179
11.1.3 結(jié)構(gòu)體變量的內(nèi)存分配 181
11.1.4 結(jié)構(gòu)體變量的引用和操作 181
11.2 結(jié)構(gòu)體與函數(shù) 183
11.3 鏈表 184
11.4 共用體 189
11.5 用戶自定義類型typedef 190
11.6 綜合應(yīng)用實例 191
本章小結(jié) 193
習(xí)題11 194
第12章 文件 197
12.1 文件基本知識 197
12.1.1 文件的分類 197
12.1.2 C語言中文件I/O操作方法 198
12.2 文件指針 198
12.3 文件的打開及關(guān)閉 199
12.3.1 文件打開函數(shù)fopen() 199
12.3.2 文件關(guān)閉函數(shù)fclose() 200
12.4 文件的其他操作函數(shù) 200
12.4.1 文件順序?qū)懞瘮?shù) 200
12.4.2 文件順序讀函數(shù) 201
12.4.3 文件隨機讀寫函數(shù) 202
12.4.4 文件檢測函數(shù)和文件定位函數(shù) 204
12.5 綜合應(yīng)用實例 205
本章小結(jié) 207
習(xí)題12 207
附錄A ASCII碼表 209
附錄B C語言運算符的優(yōu)先級及其結(jié)合性 211
附錄C 庫函數(shù) 212
附錄D 編譯錯誤信息 216
參考文獻(xiàn) 222
- Python程序設(shè)計案例教程(微課版) [主編 石利平 田輝平 余以勝]
- Java面向?qū)ο蟪绦蛟O(shè)計 [主編 姜春磊 陳虹潔]
- C語言程序設(shè)計實驗指導(dǎo)與實訓(xùn)(第二版) [主編 倪燃]
- 程序思維與C語言實現(xiàn) [張祎 王俊海 呂波]
- Python程序設(shè)計及實踐教程 [肖朝暉]
- C語言程序設(shè)計 [魏琴 劉祖珉 趙仕波 肖陽春]
- C語言程序設(shè)計實驗教程 [張小剛 司春景]
- 電氣控制與PLC程序設(shè)計(第二版) [胡冠山]
- Java Web項目化設(shè)計實踐教程 [邱云 曾陳萍]
- C語言程序設(shè)計(第三版) [主編 丁紅 王立新 蔡開立]
- Python數(shù)據(jù)分析 [主編 馮志輝 趙磊 李放]
- Python程序設(shè)計與應(yīng)用(第二版) [主編 張廣淵]
- C程序設(shè)計實踐教程 [劉衛(wèi)國]
- C程序設(shè)計(慕課版) [劉衛(wèi)國]
- 程序設(shè)計基礎(chǔ)實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- SwiftUI完全開發(fā) [李智威 著]
- MySQL數(shù)據(jù)庫項目式教程 [陳亞峰]
- C語言程序設(shè)計習(xí)題與實驗指導(dǎo)(第二版) [主編 甄增榮 張賓]
- C語言程序設(shè)計(第二版) [主編 甄增榮 田云霞]
- Unity3D虛擬現(xiàn)實應(yīng)用開發(fā)實踐 [主 編 劉龍]
- Python程序設(shè)計 [主編 姜春磊 陳虹潔]
- C語言程序設(shè)計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- 面向?qū)ο蟪绦蛟O(shè)計 [主編 張勇 張平華 趙小龍]
- Python程序設(shè)計基礎(chǔ)及實戰(zhàn) [主編 劉健]
- C語言程序設(shè)計 [姜雪]
- Python程序設(shè)計實踐教程 [王鶴琴 蔡正保]
- C++程序設(shè)計實踐教程(第三版) [主編 劉衛(wèi)國 曹岳輝]
- C++程序設(shè)計(第三版) [主編 曹岳輝 劉衛(wèi)國]
- C語言程序設(shè)計項目化教程(活頁式) [主編 張利華 潘曉利]

