編輯推薦
適讀人群 :高等學校理工類各專業學生 本書為暢銷書《C語言大學實用教程(第4版)》ISBN 9787121300059 配套輔導書。
內容簡介
本書是“十二五”普通高等教育本科國傢級規劃教材,是《C語言大學實用教程(第4版)》配套教材,也是國傢精品課教材、國傢精品資源共享課教材。全書包括習題解答、上機實驗指導和案例分析三章內容。第1章習題解答,包括主教材中全部習題及解答,涵蓋全國計算機等級考試各種題型。第2章上機實驗指導,包括程序調試技術、上機實驗題目及其參考答案、程序在綫評判和利用在綫評判編程的注意事項等。本章最後給齣的貫穿全書內容的綜閤應用實例(學生成績管理係統),可作為課程設計內容。第3章為案例分析,包括錯誤案例分析、趣味經典實例分析和程序優化三部分。主、輔教材均為任課老師免費提供電子課件及例題源代碼。本書可作為高校各專業C語言程序設計課程教材、ACM程序設計大賽和全國計算機等級考試參考書。
作者簡介
蘇小紅,哈爾濱工業大學計算機學院博士生導師,計算機科學與技術***實驗教學示範中心副主任,計算機語言基礎教研室主任,校級教學名師,校教學帶頭人,中國計算機學會高級會員,電子工業齣版社特聘專傢,國內多種核心以上期刊的審稿人,寶鋼優秀教師奬和省師德先進個人獲得者。
精彩書評
NULL
目錄
第1章 習題解答 1
1.1 習題1及參考答案 1
1.2 習題2及參考答案 1
1.3 習題3及參考答案 3
1.4 習題4及參考答案 6
1.5 習題5及參考答案 33
1.6 習題6及參考答案 44
1.7 習題7及參考答案 61
1.8 習題8及參考答案 76
1.9 習題9及參考答案 82
第2章 上機實驗指導 88
2.1 程序調試技術 88
2.1.1 調試的“七種武器” 88
2.1.2 Visual C++ 6.0的使用與調試 91
2.1.3 Code::Blocks的使用與調試 97
2.1.4 集成開發環境操作總結 103
2.1.5 用fprintf()調試程序 103
2.1.6 常見編譯錯誤信息英漢對照錶 104
2.2 課內上機實驗題目 106
2.2.1 實驗1:熟悉上機環境和順序結構編程練習 106
2.2.2 實驗2:選擇結構編程練習 107
2.2.3 實驗3:循環結構編程練習 108
2.2.4 實驗4:函數編程練習 109
2.2.5 實驗5:數組編程練習 110
2.2.6 實驗6:遞歸程序設計練習 111
2.2.7 實驗7:一維數組和函數綜閤編程練習 112
2.2.8 實驗8:二維數組和函數綜閤編程練習 112
2.2.9 實驗9:結構體編程練習 113
2.2.10 實驗10:文件編程練習 115
2.3 課外上機實驗題目 115
2.3.1 實驗1:計算到期存款本息之和 115
2.3.2 實驗2:存款預算 116
2.3.3 實驗3:尋找最佳存款方案 116
2.3.4 實驗4:抓交通肇事犯 117
2.3.5 實驗5:求解不等式 117
2.3.6 實驗6:計算禮炮聲響次數 117
2.3.7 實驗7:産值翻番計算 118
2.3.8 實驗8:簡單的口令檢查程序 118
2.3.9 實驗9:大奬賽現場統分 118
2.3.10 實驗10:數組、指針和函數綜閤編程練習 119
2.3.11 實驗11:閤並有序數列 120
2.3.12 實驗12:最牛微信 120
2.3.13 實驗13:英雄卡 120
2.3.14 實驗14:數數的手指 121
2.3.15 實驗15:計算個人所得稅 121
2.3.16 實驗16:單詞接龍 121
2.3.17 實驗17:猜神童年齡 121
2.3.18 實驗18:猴子吃桃 121
2.3.19 實驗19:數字黑洞 122
2.3.20 實驗20:火柴遊戲 122
2.4 課內上機實驗題目參考答案 125
2.4.1 實驗1:熟悉上機環境和順序結構編程練習 125
2.4.2 實驗2:選擇結構編程練習 127
2.4.3 實驗3:循環結構編程練習 132
2.4.4 實驗4:函數編程練習 137
2.4.5 實驗5:數組編程練習 148
2.4.6 實驗6:遞歸程序設計練習 161
2.4.7 實驗7:一維數組和函數綜閤編程練習 165
2.4.8 實驗8:二維數組和函數綜閤編程練習 168
2.4.9 實驗9:結構體編程練習 172
2.4.10 實驗10:文件編程練習 173
2.5 課外上機實驗題目參考答案 181
2.5.1 實驗1:計算到期存款本息之和 181
2.5.2 實驗2:存款預算 182
2.5.3 實驗3:尋找最佳存款方案 182
2.5.4 實驗4:抓交通肇事犯 183
2.5.5 實驗5:求解不等式 184
2.5.6 實驗6:計算禮炮聲響次數 185
2.5.7 實驗7:産值翻番計算 186
2.5.8 實驗8:簡單的口令檢查程序 186
2.5.9 實驗9:大奬賽現場統分 188
2.5.10 實驗10:數組、指針和函數綜閤編程練習 192
2.5.11 實驗11:閤並有序數列 197
2.5.12 實驗12:最牛微信 199
2.5.13 實驗13:英雄卡 200
2.5.14 實驗14:數數的手指 201
2.5.15 實驗15:計算個人所得稅 202
2.5.16 實驗16:單詞接龍 203
2.5.17 實驗17:猜神童年齡 204
2.5.18 實驗18:猴子吃桃 205
2.5.19 實驗19:數字黑洞 206
2.5.20 實驗20:火柴遊戲 207
2.6 課程設計――菜單驅動的學生成績管理係統 209
2.7 Online Judge――在綫評判 229
2.7.1 什麼是Online Judge 229
2.7.2 Online Judge的使用 230
2.8 利用Online Judge編程的注意事項 234
2.9 基於C/S架構的C語言編程題考試自動評分係統簡介 236
2.10 基於B/S架構的C語言編程題考試自動評分係統簡介 237
2.11 麵嚮學生自主學習的作業和實驗在綫測試係統簡介 237
第3章 案例分析 239
3.1 錯誤案例分析 239
3.1.1 變量初始化錯誤 239
3.1.2 死循環與死語句 245
3.1.3 與0比較問題 248
3.1.4 復雜情形的關係判斷問題 249
3.1.5 遺漏邊界條件測試 252
3.1.6 非所有控製分支都有返迴值錯誤 253
3.1.7 數值溢齣錯誤 255
3.1.8 類型匹配錯誤 256
3.1.9 越界訪存錯誤 258
3.1.10 緩衝區溢齣問題 265
3.1.11 內存泄漏問題 267
3.1.12 使用野指針的問題 270
3.1.13 參數非法問題 277
3.1.14 不良代碼風格問題 278
3.2 趣味經典實例分析 281
3.2.1 騎士遊曆問題 281
3.2.2 八皇後問題 283
3.3 程序優化及解決方案 287
3.4 C99簡介 293
參考文獻 298
前言/序言
第4版前言
讓學生在學習程序設計的過程中,養成良好的編程風格,在上機調試程序時,不再感到枯燥乏味,而是其樂融融,這一直是作者多年來無論是教學還是著書都孜孜以求的目標。多年C語言的學習和教學經曆,給瞭我們很多熱情與靈感,來自讀者與用戶的無數反饋,無論是贊揚還是批評,無論是鼓勵還是意見,都增加瞭我們的激情,激勵我們一次次地去修訂它。
“不求經典,但求精心”,是我們的原則。因為我們知道,隻有精心,纔可能造就經典。“知識要準確、文字要親切、示例要有趣、內容要實用”,是我們的目標。因為我們知道,準確纔有價值,親切纔被喜歡,有趣纔留印象,實用纔會對讀者有真正的幫助。我們衷心希望以本書為媒介,架起作者與讀者溝通和交流的橋梁,讓讀者跟隨我們一起去欣賞C語言之美,理解C語言之妙,體會學習C語言之無窮樂趣,不僅要學習或者學會C語言,更讓學習C語言的過程變成一件無比輕鬆快樂的事情。
本書是《C語言大學實用教程學習指導》的第4版,是“十二五”普通高等教育本科國傢級規劃教材,是《C語言大學實用教程(第4版)》(ISBN 978-7-121-30005-9)的配套教材。全書包括習題解答、上機實驗指導和案例分析三章內容。
第1章為習題解答,包括主教材中全部習題及解答,涵蓋全國計算機等級考試各種題型(選擇題、程序填空題、程序改錯題、閱讀程序寫齣運行結果題、編程題等),其中部分習題還給齣瞭多種解答方法。
第2章為上機實驗指導,包括程序調試技術、課內和課外上機實驗題目及其參考答案、Online Judge——程序在綫評判、利用Online Judge編程的注意事項、綜閤應用實例以及C語言編程題考試自動評分係統簡介等內容。程序調試技術主要介紹Visual C++ 6.0和Code::Blocks+gcc+gdb集成開發環境下標準C程序調試方法,並對二者進行瞭比較。實驗指導部分以知識點為主綫設計的實驗題目,將趣味性和實用性融為一體,以循序漸進的任務驅動方式,指導讀者完成實驗程序設計。程序在綫評判主要介紹Online Judge的使用方法,為讀者進行編程自測提供方便。本章最後給齣瞭一個貫穿全書內容的綜閤應用實例(學生成績管理係統),可作為課程設計內容。
第3章為案例分析,主要包括錯誤案例分析、趣味經典實例分析、程序優化及解決方案、C99簡介等內容。錯誤案例分析主要介紹含有隱蔽錯誤的程序的排錯方法,幫助讀者瞭解錯誤發生的原因、實質、排錯方法及解決對策;趣味經典實例分析主要介紹瞭騎士遊曆和八皇後等經典問題的程序設計;程序優化及解決方案主要介紹程序性能優化的一些基本原則。
主教材、輔教材均為任課教師免費提供電子課件,並提供例題和習題源程序。本書可作為高校各專業C語言教輔教材、ACM程序設計大賽和全國計算機等級考試參考書。
本書在第3版的基礎上增加瞭基於B/S結構的C語言編程題考試自動評分係統、試捲和題庫管理係統以及麵嚮學生自主學習的作業和實驗在綫測試係統的簡介等內容,並增加瞭10個課外實驗題目以及部分習題,還修改並完善瞭習題解答。
本課程於2007年被評為“國傢精品課”,2016年被評為“國傢精品資源共享課”。多媒體教學課件、全部例題、習題、實驗和案例分析的源代碼都可在教材網站(http://book.sunner.cn)或華信教育資源網站免費下載。我們研製的基於C/S架構的C語言編程題考試自動評分係統(已獲軟件著作權登記)也將免費提供給使用本教材的教學單位,有需要者可直接與作者聯係。該係統可以根據程序的結構和語義以及程序運行結果對C語言編程題自動評分,對於有語法錯誤的編程題也能評分。此外,配閤本教材習題,我們還研製瞭基於B/S架構的C語言編程題考試自動評分係統、麵嚮學生自主學習的作業和實驗在綫測試係統,以及C語言試捲和題庫管理係統,有需要者請直接與作者聯係和谘詢。
全書統稿和全部修訂工作由蘇小紅教授負責。實驗題目設計和實驗程序答案、錯誤案例分析、程序優化與解決方案、趣味經典實例分析、程序調試技術中的常見編譯錯誤信息的英漢對照及學生成績管理綜閤應用實例、C99簡介、C語言編程題考試自動評分係統簡介等內容的編寫由蘇小紅完成;習題1、習題5、習題9答案,以及程序調試技術和程序在綫評判由孫誌崗編寫;習題4、習題7答案由李秀坤編寫;習題8答案由陳惠鵬編寫;習題6答案由王慶北編寫;習題2、習題3答案由溫東新編寫;利用Online Judge編程的注意事項由孫大烈和車萬翔編寫。
在本書的寫作與修訂過程中,王宇穎教授在百忙之中審閱瞭全部初稿。在書稿的錄入、校對、修訂及習題、實驗題程序的調試過程中,太原理工大學的馬建芬、哈爾濱工業大學的王甜甜、趙玲玲、傅忠傳、趙巍、車萬翔、張衛、郭萍、溫東新、侯俊英、李希然、張洪誌、李秀坤、張彥航、黃虎傑、秦兵、劉勁鋒、王慶北、孫大烈、張羽、單麗莉、劉國軍、劉秉權、徐誌明、李漾、張鼕雨、婁久等做瞭大量工作。
因編者水平有限,書中錯誤在所難免,懇請批評指正,我們將在教材網站(http://book.sunner.cn)上及時發布勘誤信息,以求對讀者負責。有索取教材相關資料者,請直接與作者聯係。歡迎讀者給我們發送電子郵件或在網站上留言,對教材提齣寶貴意見。
作 者
於哈爾濱工業大學計算機科學與技術學院
緻本書讀者
在Java,C#等充滿麵嚮對象、快速開發和穩定可靠這樣溢美之詞的語言大行其道的今天,還如此耗費心力寫一本關於已經落伍瞭的C語言的書,著實讓人匪夷所思。雖然C語言在教育界還舉足輕重,在係統開發領域依然健碩,鐵杆支持者遍布世界各地,但是C語言的書籍種類繁多,早已被寫到“濫”的地步瞭。這本書的存在還會有價值嗎?
萬物皆將成為時間的灰燼,其價值體現在燃燒時發齣的光熱。
在計算機教育方麵,C語言是為數不多的與國外保持內容同步的課程之一,這大概也是因為C語言自身多年以來沒有什麼變化吧。但在教學深度上,尤其在把C語言從應試課程轉變為實踐工具方麵,國內無論是教材還是課程建設都跟不上時代發展的步伐。
計算機科學日進韆裏,很多舊的思想、方法都被打破,不能與時俱進的語言必遭淘汰。可C語言卻能奇跡般地以不動如山之姿態笑傲天下,論劍江湖,這套以靜製動的本領,來自於C語言的靈活。
靈活,使C語言的用法可以産生諸般變化。每種變化都有其利與害,趨利避害是根本。但何為利,何為害呢?這是程序設計科學研究的主題之一。隨著時間的推移,判斷的標準總在變化。比如20世紀90年代以前,性能一直是最重要的,所有的程序設計方法都趨嚮於提高性能。當硬件越來越快、越來越便宜,軟件越來越復雜、越來越昂貴,設計程序時考慮更多的是如何降低開發成本和難度,不惜以犧牲性能為代價。當網絡成為技術推動力時,安全問題又成為重中之重。
無論思潮怎樣變化,C語言總能有一套行之有效的方法來應對。這些方法完全構建在對C語言基本語法的應用之上,絲毫影響不到它固有的體係。一些適時的方法被製定為規則,另一些落後的方法則被劃為禁手。如果C語言的教科書還隻以講述語法為主,而忽略在新形勢下的新方法、新規則和新思想的傳授,就真的是沒有價值瞭。
此書要做有價值的書,要讓讀這本書的人真正學會C語言。那麼,達到什麼程度算是“學會”瞭C語言呢?這倒是一個很有意思的問題。
本書作者中有一人,自稱一生三次學會瞭C語言。
第一次是大一,看到C語言成績後,不禁自封“C語言王子”。
待到大二,偶遇一個機會,用C語言開發一個真實的軟件,纔知道自己“捲上談兵”的本領實在太小,實在與會用C語言的目標相去甚遠。編瞭大小幾個項目,上萬行代碼,自覺對C語言的掌握已爐火純青,此為第二次學會。
待迴眸品評這些項目,發現除瞭幾副好皮囊能取悅用戶之外,無論是程序結構、可讀性、可維護性還是穩定性都一團糟。年輕程序員的良心大受譴責,終於認識到,寫好程序絕不是懂語法、會調用函數那麼簡單。又經曆練,其間苦學軟件工程、麵嚮對象等理論,打造齣第一個讓自己由衷滿意的程序,於是長齣一口氣,嘆曰:“C,我終於會用瞭!”
這條路走得著實辛苦,但也確實滋味無窮,樂在其中。留校任教後,他很快獲得瞭講C語言課程的機會。欣然領命,直欲把經年積纍一並爆發,送與學生。前輩高人指點,選擇瞭Kernighan與Ritchie所撰的聖經《C Programming Language》為教材。早聞此書,初見其形;邊教邊品,仰天長嘆:“原來C語言若此,吾不曾會矣!”
總結往事,環顧業界,何謂“學會”?這是一個沒有答案的提問。學完語法規則隻是讀完瞭小學,識字不少,還會造句,但還寫不齣大篇的漂亮文章。若要進步,就必須在算法和結構設計兩方麵努力瞭。但這兩者實非一蹴而就,大學四年也隻能學到一些條條框框,就像高中畢業盡管作文無數,能力卻僅止於八股應試而已。若要寫齣“驚天地、泣鬼神”之程序,還必須廣泛實踐,多方積纍。學無止境啊!
行文至此,終於完成瞭這本自認還有價值的書。目前的計算機圖書市場異常火爆,“經典與濫竽齊飛,贊美共炒作一色”。我們不知道此書能發齣多少光熱,也不知道有多少人能見到這份光、感到這點熱,隻知道它也會成為時間的灰燼,而且盼望這一天越早到來越好。因為,此書觀點被大量否定之時,必是IT再次飛躍之日。
作 者
於哈爾濱工業大學計算機科學與技術學院
C語言大學實用教程學習指導(第4版) 下載 mobi epub pdf txt 電子書 格式