《普通高等教育“十一五”國家級規(guī)劃教材·計算機系列教材:C/C++程序設計案例教程》是普通高等教育“十一五”國家規(guī)劃教材,是“C/C++語言程序設計”精品課程建設的配套教材。
全書內(nèi)容共分兩篇。第一篇是基礎篇,介紹C語言程序設計的基本知識及其應用,主要內(nèi)容包括數(shù)據(jù)類型、程序控制結(jié)構(gòu)、數(shù)組、函數(shù)、結(jié)構(gòu)體與共用體、文件等;第二篇是提高篇,介紹C++程序設計方法。主要內(nèi)容有面向?qū)ο蟪绦蛟O計、C++程序的基本知識、類與對象、繼承與組合、指針與多態(tài)性、重載與模板等。
《普通高等教育“十一五”國家級規(guī)劃教材·計算機系列教材:C/C++程序設計案例教程》按照“精講多練、重在實踐”的原則,以“案例驅(qū)動知識”的寫作方法,以C語言內(nèi)容為人門,循序漸進,由淺人深地將面向過程程序設計和面向?qū)ο蟪绦蛟O計的知識有機地結(jié)合起來,體現(xiàn)了教材的應用性、創(chuàng)造性和先進性。
《普通高等教育“十一五”國家級規(guī)劃教材·計算機系列教材:C/C++程序設計案例教程》可作為高等學校程序設計課程的教材,也可以作為培訓或自學教材。
《C語言程序設計案例教程》(含實驗)自2009年第1版印刷以來,受到廣大讀者的歡迎,隨著計算機技術應用的普及,信息時代對IT人員提出了更高的要求與挑戰(zhàn),不僅要掌握面向過程的C程序設計語言,還要掌握面向?qū)ο蟮某绦蛟O計語言,Visual C++成為繼C語言之后的首選的面向?qū)ο蟮某绦蛟O計語言。為此,編者按照普通高等教育“十一五”國家規(guī)劃教材建設的要求,結(jié)合新的教育教學的要求對第1版教材進行了必要的修訂。
修訂后的教材其教學目標與前版相同,重點在培養(yǎng)學生用計算機解決實際問題的能力,提高學生的編程和軟件開發(fā)能力,為計算機科學與技術各相關專業(yè)學生后續(xù)課程的學習與實踐打下良好的基礎。同時,根據(jù)讀者的反饋意見,將數(shù)組與函數(shù)的內(nèi)容在順序上進行了調(diào)整,增加了C++程序設計的知識,總結(jié)教學中的經(jīng)驗,對部分內(nèi)容進行了修改,教材中的實例都在Visual C++ 6.0環(huán)境下完成。本教材推薦使用時間為一學年,第1學期講授C語言程序設計(64學時或80學時,含實驗32學時); 第2學期講授C++程序設計(大概64學時,含實驗32學時)。通過一學年的學習使讀者能夠循序漸進地掌握C/C++程序設計方法與技巧,為今后的程序研發(fā)工作夯實基礎。
《C/C++程序設計案例教程》全書共分兩篇。
第一篇是基礎篇,重點介紹C語言程序設計內(nèi)容,共分9章: 第1章和2章介紹C語言的基本知識; 第3章是數(shù)據(jù)類型及應用,介紹C語言中所用到的各種基本數(shù)據(jù)類型; 第4章介紹C語言的三種程序控制結(jié)構(gòu),即順序結(jié)構(gòu)、選擇結(jié)構(gòu)與循環(huán)程序結(jié)構(gòu)及其應用; 第5章是數(shù)組及應用。主要介紹一維數(shù)組、二維數(shù)組及字符數(shù)組的定義、初始化及引用。著重對指針訪問數(shù)組進行了舉例; 第6章是函數(shù)及應用,主要介紹了函數(shù)的定義、函數(shù)的調(diào)用、全局變量與局部變量的應用,重點介紹了指針作為函數(shù)參數(shù)的引用; 第7章是結(jié)構(gòu)體與共用體的定義與引用,對單鏈表的建立、插入與刪除進行了舉例; 第8章是文件的讀寫及應用; 第9章是位運算操作。
第二篇是提高篇,重點介紹C++程序設計方法,共分7章: 第10章和第11章主要介紹面向?qū)ο蟪绦蛟O計與C++程序的基本知識,重點介紹與C語言程序設計的異同內(nèi)容; 第12章是類與對象,介紹C++中類的定義及其應用; 第13章是繼承與組合,介紹繼承的定義與組合的應用; 第14章是多態(tài)性,主要介紹多態(tài)性的作用以及多態(tài)性的實現(xiàn); 第15章是異常處理機制,介紹C++的異常處理機制和自定義異常類,重點介紹如何通過trythrowcatch語句實現(xiàn)異常處理; 第16章是綜合應用,運用C++的知識點開發(fā)一個簡單的圖形對象程序。
另外,為了更好地培養(yǎng)學生的編程能力,配合計算機科學與技術、信息管理專業(yè)課程建設的需要,在編寫《C/C++程序設計案例教程》的過程中,寫作組的老師們根據(jù)多年教學實踐與經(jīng)驗,提出編寫了《C/C++程序設計學習指南》的配套輔助教學教材,為課堂教學、實驗指導、學生自學提供立體的教學資源。本書既適合高等院校的本科學生使用,也適合于熱愛軟件開發(fā)人員作為自學的參考資料。
本教材的作者都是高等院校的教師。本書的出版是“C/C++程序設計”精品課程建設中所催生的產(chǎn)物,在課程建設過程中,編寫組成員對教材內(nèi)容、教學方法進行了多次的研討,最后確定了以“案例驅(qū)動知識”的寫作方法,經(jīng)過幾年的使用,受到廣大讀者的好評。
本教材的第一篇由仇芒仙(第1~3章和第5章)、魏遠旺(第4章)、張麗華(第6~8章)、李永剛(第9章)編寫; 第二篇由朱蓉(第10章)、許杰(第11章和第12章)、趙利平(第13和第15章)、葉利華(第14章和第16章)編寫。全書由仇芒仙教授和朱蓉博士統(tǒng)稿。在本書再版之際,對修訂過程中給予幫助并提出了建設性的意見的殷聯(lián)甫、龔迅煒、殷海明等表示感謝。
對支持本書再版的清華大學出版社的領導及魏江江表示感謝!
感謝嘉興學院計算機科學與技術學科的支持!
由于編者水平有限,書中疏漏之處在所難免,敬請各位讀者及同仁不各賜教,謝謝!
編者2012年4月
第一篇 基礎篇
第1章 C程序概述
1.1 C程序的結(jié)構(gòu)
1.1.1 C程序?qū)嵗?br>1.1.2 C程序構(gòu)成
1.1.3 書寫程序時應遵循的原則
1.2 C語言的發(fā)展
1.2.1 C語言的發(fā)展
1.2.2 C語言的特點
1.3 數(shù)據(jù)在計算機中的存儲形式與表示方法
1.3.1 內(nèi)存的組織形式
1.3.2 原碼、反碼和補碼
習題1
第2章 程序與算法
2.1 利用計算機解決問題的基本過程
2.2 程序的算法
2.2.1 算法的概念
2.2.2 算法的描述
2.3 結(jié)構(gòu)化程序設計
2.3.1 結(jié)構(gòu)化程序的基本結(jié)構(gòu)
2.3.2 結(jié)構(gòu)化程序設計的特點與方法
2.3.3 結(jié)構(gòu)化程序設計的過程
2.3.4 程序設計的原則
2.4 C程序的運行步驟
習題2
第3章 數(shù)據(jù)類型及其應用
3.1 C語言的數(shù)據(jù)類型
3.2 常量
3.3 變量
3.3.1 變量的命名
3.3.2 變量的分類與說明
3.3.3 變量的地址——指針
3.4 運算符和表達式
3.4.1 常見的運算符
3.4.2 表達式
3.4.3 數(shù)據(jù)類型轉(zhuǎn)換
3.5 數(shù)據(jù)的輸出
3.5.1 printf()函數(shù)
3.5.2 字符輸出函數(shù)putchar()
3.6 數(shù)據(jù)的輸入
3.6.1 scanf()函數(shù)
3.6.2 字符輸入函數(shù)getchar()
習題3
第4章 控制結(jié)構(gòu)
4.1 順序結(jié)構(gòu)
4.2 選擇結(jié)構(gòu)
4.2.1 if語句
4.2.2 switch語句
4.3 循環(huán)結(jié)構(gòu)
4.3.1 用while語句實現(xiàn)循環(huán)
4.3.2 用do-while語句實現(xiàn)循環(huán)
4.3.3 用for。語句實現(xiàn)循環(huán)
4.3.4 循環(huán)嵌套
4.3.5 break語句和continue語句
4.3.6 goto語句
4.4 綜合實例
習題4
第5章 數(shù)組
5.1 一維數(shù)組
5.1.1 一維數(shù)組的定義和引用
5.1.2 一維數(shù)組的初始化
……
第二篇 提高篇