關(guān)于我們
書單推薦
新書推薦
|
計(jì)算概論(第2版)
本書是一本軟件和硬件知識(shí)豐富而全面的計(jì)算機(jī)入門教材,其內(nèi)容重點(diǎn)不是放在計(jì)算機(jī)的具體操作說明上,也不是表面地講一些技術(shù)發(fā)展?fàn)顩r,而是在計(jì)算機(jī)和互聯(lián)網(wǎng)的基礎(chǔ)知識(shí)和技術(shù)原理上,努力從概念層面作全面清晰的講解。結(jié)合具體的例子,講解軟件和硬件組成的相關(guān)概念,以深入淺出的文字說明其工作原理。本書的內(nèi)容包括4個(gè)方面: 信息技術(shù)發(fā)展概貌、計(jì)算機(jī)互聯(lián)網(wǎng)技術(shù)、計(jì)算機(jī)的組成原理、程序設(shè)計(jì)方法。本教材“立足基礎(chǔ)、因材施教、強(qiáng)化實(shí)踐”.
本書適合作為高等學(xué)校理工專業(yè)本科生的計(jì)算概論、計(jì)算機(jī)導(dǎo)論等計(jì)算機(jī)入門課程的教學(xué)用書,也可以作為參與計(jì)算機(jī)和信息科學(xué)競(jìng)賽項(xiàng)目的參考書。
每一個(gè)剛涉足計(jì)算機(jī)領(lǐng)域的人都很想知道怎樣才能盡快地學(xué)習(xí)到最有用的計(jì)算機(jī)知識(shí)。首先要建議的是,在一開始請(qǐng)不要僅限于技能培訓(xùn)式的學(xué)習(xí)。學(xué)習(xí)計(jì)算機(jī)知識(shí)不像學(xué)習(xí)汽車駕駛技術(shù),僅局限于交通規(guī)則和駕駛操作的初等培訓(xùn)是不夠的。有些使用過計(jì)算機(jī)的人可能認(rèn)為,計(jì)算機(jī)基本知識(shí)的學(xué)習(xí)沒有什么用,為了學(xué)會(huì)計(jì)算機(jī)只需要多使用多練習(xí)就可以了。雖然這種意見包含有正確成分,一個(gè)人不參與實(shí)際使用計(jì)算機(jī),不取得第一手經(jīng)驗(yàn)是不會(huì)真正懂得計(jì)算機(jī)的。但是,只是能夠快速麻利地使用計(jì)算機(jī),能夠用它進(jìn)行寫作或繪制圖表,就認(rèn)為可以成為一個(gè)計(jì)算機(jī)的行家里手,那就錯(cuò)了。計(jì)算機(jī)的學(xué)習(xí)從一開始就要強(qiáng)調(diào)基本概念的理解,強(qiáng)調(diào)掌握計(jì)算機(jī)和通信網(wǎng)絡(luò)的基本原理,不能局限于記憶操作步驟和熟練工作技能。僅僅學(xué)會(huì)文字編輯、網(wǎng)頁制作等技能是不夠的。計(jì)算機(jī)科學(xué)和技術(shù)知識(shí)日新月異,硬件和軟件新技術(shù)層出不窮,它們的應(yīng)用種類也是千變?nèi)f化,技能方面的知識(shí)往往陳舊過時(shí)得非?,停留在某些常用軟件的使用技能上是無法適應(yīng)未來發(fā)展的。
《計(jì)算概論》這本書為讀者提供了計(jì)算機(jī)入門知識(shí)。為了盡快進(jìn)入計(jì)算機(jī)知識(shí)的大門,我們的建議是: 打好基礎(chǔ)才是捷徑。計(jì)算機(jī)和信息網(wǎng)絡(luò)將會(huì)伴隨你的一生,計(jì)算機(jī)將會(huì)成為你的貼身助手。學(xué)會(huì)靈活運(yùn)用計(jì)算機(jī),計(jì)算機(jī)就會(huì)聽從主人的操縱,成為適合你個(gè)性需要的有用工具。 古人云: “工欲善其事,必先利其器”,不要吝惜對(duì)工具的犀利打磨功夫,打好基礎(chǔ)才是靈活運(yùn)用的前提。我們對(duì)基礎(chǔ)學(xué)習(xí)提出幾條具體建議: ①不要局限于記憶,遇到的技術(shù)名詞不必拘泥于每一個(gè)詞都弄明白,遇到難懂的概念,可以做一個(gè)記號(hào)繼續(xù)往下讀。書中內(nèi)容可以反復(fù)閱讀,回過來溫習(xí)往往會(huì)有新的收獲。上機(jī)練習(xí)以及與他人的討論,都會(huì)幫助對(duì)問題的認(rèn)識(shí),加深對(duì)概念的理解。②一定要有上機(jī)實(shí)踐。本書雖然沒有偏重具體講解上機(jī)、上網(wǎng)和使用軟件的具體操作過程,但是建議讀者一定要參照相關(guān)的操作教程,獲得計(jì)算機(jī)操作系統(tǒng)、文字編輯、上網(wǎng)以及網(wǎng)頁制作等方面的具體經(jīng)驗(yàn)。③在實(shí)際操縱計(jì)算機(jī)時(shí),如果它不聽話,一定不要?dú)怵H!皸l條大路通北京”,為了讓計(jì)算機(jī)完成某一件工作,決不會(huì)只有一條途徑,一般都存在很多種辦法。當(dāng)遇到挫折時(shí)一定要停下來想一想,設(shè)法換一種思維、另找一種辦法去完成它。④黑箱原理。機(jī)器內(nèi)部的計(jì)算機(jī)工作原理雖然比較復(fù)雜,但是作為使用者不必全部了解清楚復(fù)雜原理才能運(yùn)用它。黑箱原理的意思是: 為了突出一個(gè)系統(tǒng)的功能和特點(diǎn),應(yīng)該忽略與當(dāng)前主要問題無關(guān)的細(xì)節(jié),把那些次要的復(fù)雜東西遮蓋起來,就好像將復(fù)雜系統(tǒng)放在一個(gè)黑箱里面,外面僅留著最主要的部分。也就是說,在觀念上,要盡量突出自己關(guān)心的主要問題。例如,為了錄入一篇文章,需要了解計(jì)算機(jī)鍵盤和顯示屏怎樣配合工作的基本原理,但是并不需要全面了解鍵盤、計(jì)算機(jī)和顯示屏三者配合工作的細(xì)節(jié)。為了編輯文章,開始只需要理解與文字編輯有關(guān)的操作,輸入的文字能夠存儲(chǔ)在計(jì)算機(jī)里等?傊,在學(xué)習(xí)上不必一次求全,采取一步步深入,邊實(shí)踐邊深入理解的策略更好些。 前 言 計(jì)算概論(第2版) 本教材的教學(xué)理念是“立足基礎(chǔ)、因材施教、強(qiáng)化實(shí)踐”。對(duì)新入學(xué)的大學(xué)生,其基礎(chǔ)教育內(nèi)容包括了原理性的計(jì)算概論和程序設(shè)計(jì)基礎(chǔ)兩個(gè)部分。雖然在高中階段,很多學(xué)生已經(jīng)接受了計(jì)算機(jī)和因特網(wǎng)的軟硬件以及二進(jìn)制、文字處理、操作系統(tǒng)等知識(shí),也包括基本的程序設(shè)計(jì)訓(xùn)練,但是只有少數(shù)學(xué)生真正理解計(jì)算和網(wǎng)絡(luò)通信的基本特征?紤]到這些情況,本教材前7章包括了計(jì)算與網(wǎng)絡(luò)通信的原理性講解,后續(xù)4章則是程序設(shè)計(jì)基礎(chǔ)。在課程教學(xué)上,建議可根據(jù)學(xué)生的不同知識(shí)層次,設(shè)計(jì)不同的教學(xué)重點(diǎn)要求,以滿足學(xué)生的不同需求。其目的是爭(zhēng)取讓每個(gè)學(xué)生都能夠在課堂中保持“新鮮”感,既能避免“跟不上”,也可以設(shè)法避免“嚼冷飯”、“進(jìn)度慢”的現(xiàn)象。對(duì)于基礎(chǔ)好、領(lǐng)悟力強(qiáng)的學(xué)生可以組成“實(shí)驗(yàn)班”教學(xué),而大部分學(xué)生在普通班學(xué)習(xí)。原來沒有基礎(chǔ)的學(xué)生,初期還可以為其開設(shè)輔導(dǎo)班進(jìn)行個(gè)別輔導(dǎo)。在授課中,一般采取基礎(chǔ)訓(xùn)練(30%) 、綜合實(shí)踐(40%)和創(chuàng)新培養(yǎng)(30%)相結(jié)合的培養(yǎng)模式。 在講解程序設(shè)計(jì)基礎(chǔ)時(shí),要使學(xué)生通過較多的上機(jī)訓(xùn)練,掌握程序設(shè)計(jì)的基本方法。通過實(shí)踐環(huán)節(jié),逐步提高程序設(shè)計(jì)的技巧,建立良好的編制程序習(xí)慣,寫出規(guī)范的程序代碼,為后續(xù)課程打好基礎(chǔ)。除了讓學(xué)生掌握基本功之外,也要強(qiáng)調(diào)對(duì)問題求解的抽象能力的培養(yǎng),學(xué)習(xí)如何把實(shí)際問題用數(shù)學(xué)的形式表示。為此,教材提供了一些經(jīng)典的算法知識(shí),例如遞歸、貪心算法和動(dòng)態(tài)規(guī)劃等,以開闊學(xué)生解題的思路。 在具體教學(xué)內(nèi)容上,建議沿著計(jì)算機(jī)科學(xué)發(fā)展的主線,介紹重要的基本概念,不必面面俱到。同時(shí),也要爭(zhēng)取讓學(xué)生了解當(dāng)前計(jì)算機(jī)領(lǐng)域出現(xiàn)的新思想、新技術(shù)、新方法。為此,每一年都要爭(zhēng)取在教學(xué)內(nèi)容上做必要更新。為了配合實(shí)驗(yàn)教學(xué),作者在教育網(wǎng)上提供了在線實(shí)驗(yàn)教學(xué)平臺(tái),即程序設(shè)計(jì)在線評(píng)測(cè)系統(tǒng)POJ (http: //acm.pku.edu.cn/JudgeOnline和http://poj.grids.cn) ,以及面向非計(jì)算機(jī)專業(yè)學(xué)生學(xué)習(xí)實(shí)踐的編程網(wǎng)格系統(tǒng)PG (http://programming.grids.cn) 。它是一個(gè)開放的網(wǎng)絡(luò)教學(xué)環(huán)境,為教師和學(xué)生提供在線的編程實(shí)踐和在線考試環(huán)境,提供豐富的教學(xué)資源和教學(xué)輔導(dǎo)。該平臺(tái)還能夠與大學(xué)生程序設(shè)計(jì)競(jìng)賽結(jié)合,努力培養(yǎng)學(xué)生的創(chuàng)新能力。 該實(shí)驗(yàn)教學(xué)平臺(tái)已經(jīng)建設(shè)了一個(gè)能夠適合各專業(yè)背景的、循序漸進(jìn)的上機(jī)編程題庫。利用POJ/PG系統(tǒng),任課教師可以根據(jù)課程進(jìn)度對(duì)學(xué)生程序設(shè)計(jì)實(shí)習(xí)內(nèi)容進(jìn)行編排(包括作業(yè)、練習(xí)和競(jìng)賽等)。學(xué)生可以通過網(wǎng)絡(luò)在線提交程序設(shè)計(jì)的源代碼,由POJ/PG系統(tǒng)自動(dòng)對(duì)學(xué)生提交的程序進(jìn)行驗(yàn)證并實(shí)時(shí)通知結(jié)果。POJ/PG系統(tǒng)除了用于教學(xué)之外,還面向社會(huì)開放,吸引了大量的程序設(shè)計(jì)愛好者的參與和討論。此外,該教學(xué)平臺(tái)還提供一些大型程序設(shè)計(jì)練習(xí),以便培養(yǎng)學(xué)生的團(tuán)隊(duì)合作能力。這種在線程序設(shè)計(jì)驗(yàn)證平臺(tái)以及按照?qǐng)F(tuán)隊(duì)協(xié)作方式的在線實(shí)踐活動(dòng),激發(fā)了學(xué)生的實(shí)習(xí)興趣,提高了學(xué)生的學(xué)習(xí)積極性與主動(dòng)性。 在教學(xué)輔導(dǎo)方面,建議采用助教制度。每個(gè)本科生小班(約30人)可以安排1名助教,進(jìn)行全程的教學(xué)輔導(dǎo)。采用這種小班實(shí)踐輔導(dǎo)和在線評(píng)估,可以保證教學(xué)效果,也提供了助教的考核依據(jù)。 目前,POJ系統(tǒng)已經(jīng)擁有注冊(cè)用戶80 000多個(gè),在PG系統(tǒng)上也開設(shè)了10余門課程。系統(tǒng)不僅在北京大學(xué)得到應(yīng)用,在全國程序設(shè)計(jì)競(jìng)賽和一些兄弟院校已經(jīng)采用POJ/PG系統(tǒng)進(jìn)行教學(xué)實(shí)踐。 本書是在2005年出版的《計(jì)算概論》(許卓群,李文新,羅英偉. 計(jì)算概論. 北京: 清華大學(xué)出版社,2005)基礎(chǔ)上編寫的。這次教材編寫工作被遴選為教育部普通高等教育“十一五”國家級(jí)教材規(guī)劃選題、中國新聞出版總署“十一五”國家重點(diǎn)圖書。許卓群編寫第1章、第6章和第7章,羅英偉編寫第3章至第5章,李文新編寫第8章至第11章,汪小林編寫第2章、第12章和7.5節(jié)。 和前述2005年《計(jì)算概論》相比,本書補(bǔ)充了近年來教學(xué)實(shí)踐的經(jīng)驗(yàn)總結(jié)以及信息技術(shù)新近發(fā)展的成果。但從教學(xué)理念來看,本書內(nèi)容的很多方面源自于這些年和本書作者一起參與教學(xué)實(shí)踐的教學(xué)組其他同仁,來自于他們的許多貢獻(xiàn)。 作 者 2009年8月
第1章 計(jì)算機(jī)與信息社會(huì)11.1 信息與信息服務(wù)1
1.1.1 信息服務(wù)1 1.1.2 數(shù)據(jù)是編碼的信息2 1.1.3 二進(jìn)制信息編碼3 1.1.4 信息編碼長度4 1.1.5 信息互聯(lián)網(wǎng)絡(luò)和國際互聯(lián)網(wǎng)4 1.1.6 計(jì)算機(jī)發(fā)展的四代歷程6 1.1.7 大規(guī)模集成電路與摩爾定律7 1.1.8 微型計(jì)算機(jī)8 1.1.9 人和機(jī)器的雙向互動(dòng)9 1.2 數(shù)字計(jì)算機(jī)的主要特征10 1.2.1 計(jì)算機(jī)的基本組成11 1.2.2 CPU和主存儲(chǔ)器12 1.2.3 數(shù)據(jù)--整數(shù)的二進(jìn)制編碼14 1.2.4 程序--匯編程序語言及高級(jí)程序語言17 1.3 國際互聯(lián)網(wǎng)的構(gòu)成 19 1.3.1 局域網(wǎng)和廣域網(wǎng)19 1.3.2 局域網(wǎng)與路由器20 1.3.3 無線網(wǎng)21 1.4 CPU的二進(jìn)制算術(shù)運(yùn)算和邏輯運(yùn)算22 1.4.1 定點(diǎn)數(shù)與浮點(diǎn)數(shù)22 1.4.2 負(fù)數(shù)的表示法23 1.4.3 CPU的二進(jìn)制邏輯運(yùn)算26 1.5 習(xí)題27 第2章 互聯(lián)網(wǎng)與信息共享29 2.1 互聯(lián)網(wǎng)的歷史發(fā)展29 2.2 互聯(lián)網(wǎng)的通信協(xié)議30 2.2.1 通信協(xié)議棧30 2.2.2 網(wǎng)絡(luò)層協(xié)議31 2.2.3 傳輸層協(xié)議31 2.3 互聯(lián)網(wǎng)上的應(yīng)用32 2.3.1 電子郵件收發(fā)33 2.3.2 遠(yuǎn)程文件傳輸33 2.3.3 網(wǎng)頁瀏覽34 2.3.4 即時(shí)通信34 2.3.5 P2P文件共享34 2.4 接入互聯(lián)網(wǎng)35 2.4.1 通過小區(qū)寬帶或校園網(wǎng)接入互聯(lián)網(wǎng)35 2.4.2 通過ADSL接入因特網(wǎng)38 2.5 組建自己的局域網(wǎng)39 2.6 習(xí)題42 目 錄 計(jì)算概論(第2版)第3章 計(jì)算機(jī)的基本組成43 3.1 計(jì)算機(jī)的硬件組成43 3.1.1 計(jì)算機(jī)的邏輯結(jié)構(gòu)44 3.1.2 計(jì)算機(jī)的主要部件46 3.1.3 計(jì)算機(jī)外圍設(shè)備56 3.1.4 網(wǎng)絡(luò)計(jì)算機(jī)63 3.2 計(jì)算機(jī)的軟件組成64 3.2.1 系統(tǒng)軟件65 3.2.2 應(yīng)用軟件67 3.3 計(jì)算機(jī)硬件與軟件的協(xié)同工作67 3.4 購買自己的計(jì)算機(jī)69 3.4.1 選擇硬件69 3.4.2 安裝操作系統(tǒng)70 3.4.3 安裝應(yīng)用軟件70 3.5 有關(guān)計(jì)算機(jī)發(fā)展的人物和組織70 3.5.1 圖靈和圖靈獎(jiǎng)70 3.5.2 馮·諾依曼71 3.5.3 計(jì)算機(jī)界具有影響力的兩大國際學(xué)術(shù)組織72 3.6 習(xí)題73 第4章 信息表示與信息輸入輸出74 4.1 計(jì)算機(jī)能幫我們做什么74 4.1.1 閱讀與寫作74 4.1.2 音樂75 4.1.3 圖片76 4.1.4 動(dòng)畫與電影76 4.1.5 游戲77 4.2 信息表示及信息輸入輸出78 4.2.1 二進(jìn)制信息編碼78 4.2.2 信息輸入輸出的本質(zhì)79 4.2.3 計(jì)算機(jī)系統(tǒng)的信息交換環(huán)境81 4.3 信息的編碼及其輸入與輸出83 4.3.1 數(shù)值的表示范圍和精度83 4.3.2 指令編碼84 4.3.3 聲音編碼及其輸入與輸出85 4.3.4 顏色編碼及其展示87 4.3.5 圖形/圖像編碼及其輸入與輸出88 4.3.6 字符編碼及其輸入與輸出93 4.3.7 動(dòng)畫/影像編碼105 4.3.8 基本的編碼規(guī)則106 4.3.9 復(fù)雜編碼106 4.4 多媒體技術(shù)107 4.4.1 多媒體技術(shù)的基本概念107 4.4.2 多媒體信息的壓縮編碼109 4.4.3 多媒體應(yīng)用軟件111 4.5 人機(jī)交互112 4.5.1 圖形用戶界面112 4.5.2 人機(jī)交互技術(shù)的發(fā)展114 4.6 習(xí)題116 第5章 信息存儲(chǔ)118 5.1 存儲(chǔ)設(shè)備的性能指標(biāo)119 5.2 計(jì)算機(jī)存儲(chǔ)系統(tǒng)的層次結(jié)構(gòu)120 5.3 磁盤的結(jié)構(gòu)與工作原理123 5.3.1 磁介質(zhì)的存儲(chǔ)原理123 5.3.2 磁盤的盤片124 5.3.3 磁盤的結(jié)構(gòu)125 5.3.4 磁盤的使用128 5.4 其他存儲(chǔ)設(shè)備129 5.4.1 磁帶及磁帶機(jī)129 5.4.2 光盤存儲(chǔ)131 5.4.3 閃存技術(shù)133 5.5 習(xí)題136 第6章 CPU的信息處理137 6.1 圖靈機(jī)137 6.1.1 圖靈機(jī)模型137 6.1.2 圖靈機(jī)計(jì)算舉例139 6.1.3 計(jì)算機(jī)科學(xué)理論的發(fā)展里程碑142 6.2 指令系統(tǒng)142 6.2.1 指令系統(tǒng)簡(jiǎn)介142 6.2.2 指令編碼143 6.3 中央處理器144 6.3.1 CPU的組成144 6.3.2 指令的執(zhí)行146 6.3.3 程序中斷147 6.4 主存儲(chǔ)器及其與CPU的信息交換148 6.4.1 主存儲(chǔ)器的組成148 6.4.2 存儲(chǔ)單元及存儲(chǔ)地址149 6.4.3 存儲(chǔ)總線與數(shù)據(jù)傳輸150 6.5 習(xí)題151 第7章 計(jì)算機(jī)軟件與硬件的協(xié)同工作153 7.1 計(jì)算機(jī)中的信息資源與信息服務(wù)153 7.1.1 硬件資源與軟件資源153 7.1.2 資源管理和信息服務(wù)155 7.1.3 虛擬服務(wù)技術(shù)155 7.2 操作系統(tǒng)157 7.2.1 操作系統(tǒng)的主要功能和當(dāng)前流行的操作系統(tǒng)類型157 7.2.2 CPU管理和任務(wù)管理159 7.2.3 I/O外部設(shè)備管理160 7.2.4 存儲(chǔ)資源管理161 7.2.5 用戶界面164 7.3 文件系統(tǒng)168 7.3.1 文件和文件夾168 7.3.2 目錄結(jié)構(gòu)下的文件訪問171 7.3.3 硬盤的文件存儲(chǔ)結(jié)構(gòu)173 7.3.4 Windows資源管理器175 7.3.5 NTFS176 7.4 Windows操作系統(tǒng)的維護(hù)管理179 7.4.1 磁盤管理工具180 7.4.2 磁盤碎片整理工具181 7.4.3 視窗顯示屬性與高級(jí)外觀設(shè)置183 7.4.4 設(shè)備管理器184 7.4.5 任務(wù)管理器與“開始”圖標(biāo)185 7.4.6 添加和刪除程序的工具188 7.5 系統(tǒng)安全189 7.5.1 信息加密189 7.5.2 計(jì)算機(jī)病毒190 7.6 習(xí)題193 第8章 程序設(shè)計(jì)--入門篇195 8.1 學(xué)習(xí)程序設(shè)計(jì)五要素195 8.1.1 理解程序運(yùn)行過程195 8.1.2 程序設(shè)計(jì)語言196 8.1.3 掌握一些基本的算法196 8.1.4 學(xué)習(xí)完整的解決問題的過程196 8.1.5 多做練習(xí)196 8.2 程序設(shè)計(jì)的一般過程197 8.2.1 分析問題尋求算法197 8.2.2 程序設(shè)計(jì)197 8.2.3 程序?qū)崿F(xiàn)198 8.2.4 程序正確性檢驗(yàn)198 8.3 程序設(shè)計(jì)語言198 8.3.1 機(jī)器語言199 8.3.2 匯編語言199 8.3.3 高級(jí)程序設(shè)計(jì)語言205 8.4 編程環(huán)境208 8.4.1 基本概念208 8.4.2 Visual C++209 8.5 程序閱讀理解213 8.5.1 Hello World214 8.5.2 輸入輸出215 8.5.3 表達(dá)式216 8.5.4 分支語句217 8.5.5 循環(huán)語句220 8.5.6 判斷語句221 8.5.7 隨機(jī)數(shù)222 8.6 程序書寫規(guī)則224 8.6.1 變量的命名224 8.6.2 語句的層次和對(duì)齊224 8.6.3 注釋225 8.6.4 寫程序的一些禁忌226 8.7 習(xí)題227 第9章 程序設(shè)計(jì)--基本框架230 9.1 程序的基本框架230 9.2 標(biāo)識(shí)符和關(guān)鍵字233 9.3 數(shù)據(jù)類型、常量和變量234 9.3.1 數(shù)據(jù)類型234 9.3.2 常量235 9.3.3 變量235 9.4 運(yùn)算符和表達(dá)式239 9.4.1 運(yùn)算符240 9.4.2 算術(shù)表達(dá)式240 9.4.3 關(guān)系表達(dá)式241 9.4.4 邏輯表達(dá)式241 9.4.5 位運(yùn)算表達(dá)式241 9.4.6 賦值表達(dá)式242 9.4.7 條件表達(dá)式242 9.4.8 數(shù)據(jù)類型轉(zhuǎn)換242 9.4.9 運(yùn)算符的優(yōu)先級(jí)和結(jié)合性243 9.5 語句243 9.5.1 if-else244 9.5.2 switch-case/default246 9.5.3 for248 9.5.4 while250 9.5.5 do-while251 9.5.6 break252 9.5.7 continue253 9.5.8 空語句255 9.6 控制臺(tái)輸入和輸出255 9.6.1 數(shù)據(jù)輸入255 9.6.2 數(shù)據(jù)輸出256 9.6.3 一個(gè)包含輸入輸出語句的完整程序257 9.7 初等算法(計(jì)數(shù)、統(tǒng)計(jì)和數(shù)學(xué)運(yùn)算等)257 9.8 習(xí)題261 第10章 程序設(shè)計(jì)--數(shù)組和結(jié)構(gòu)263 10.1 數(shù)組263 10.1.1 數(shù)組的定義263 10.1.2 數(shù)組元素的賦值264 10.1.3 數(shù)組的訪問和遍歷264 10.1.4 例題265 10.1.5 數(shù)組使用中的注意事項(xiàng)270 10.1.6 多維數(shù)組270 10.2 結(jié)構(gòu)273 10.2.1 結(jié)構(gòu)類型和結(jié)構(gòu)類型變量的定義273 10.2.2 結(jié)構(gòu)類型變量的訪問與賦值276 10.2.3 例題276 10.2.4 結(jié)構(gòu)使用中的注意事項(xiàng) 278 10.3 指針278 10.3.1 指針的概念、定義和使用 278 10.3.2 指向結(jié)構(gòu)和數(shù)組元素的指針 279 10.3.3 指針的加減法運(yùn)算280 10.3.4 指針應(yīng)用的例子 281 10.4 字符串281 10.4.1 字符數(shù)組、字符串和字符指針281 10.4.2 字符串變量的初始化及輸入輸出 282 10.4.3 常用的字符串處理函數(shù)284 10.4.4 字符串應(yīng)用的例子285 10.5 動(dòng)態(tài)數(shù)組286 10.5.1 動(dòng)態(tài)數(shù)組的申請(qǐng)286 10.5.2 動(dòng)態(tài)數(shù)組的訪問與賦值287 10.5.3 動(dòng)態(tài)數(shù)組空間的釋放288 10.5.4 內(nèi)存分配釋放的注意事項(xiàng)288 10.5.5 使用動(dòng)態(tài)數(shù)組的例子289 10.6 文件的輸入輸出292 10.6.1 創(chuàng)建文件292 10.6.2 打開和關(guān)閉文件292 10.6.3 從文件中讀入數(shù)據(jù)293 10.6.4 將數(shù)據(jù)寫入文本文件294 10.6.5 格式化文件輸入輸出294 10.6.6 格式化文件輸入輸出例題296 10.7 排序297 10.7.1 起泡排序297 10.7.2 插入排序298 10.7.3 查找299 10.7.4 順序查找299 10.7.5 二分法查找300 10.8 習(xí)題301 第11章 程序設(shè)計(jì)--函數(shù)304 11.1 函數(shù)304 11.1.1 函數(shù)的定義304 11.1.2 函數(shù)的調(diào)用305 11.1.3 參數(shù)傳遞和返回值306 11.1.4 傳值306 11.1.5 傳地址308 11.1.6 返回值308 11.1.7 全局變量和局部變量310 11.2 模塊化程序設(shè)計(jì)思想(問題分解與抽象)312 11.3 遞歸314 11.3.1 函數(shù)的遞歸調(diào)用314 11.3.2 用遞歸的思想解決問題314 11.4 樣例程序317 11.5 習(xí)題320 第12章 問題分析與算法設(shè)計(jì)323 12.1 算法的效率323 12.1.1 二分搜索323 12.1.2 選擇排序和插入排序326 12.2 計(jì)算復(fù)雜性327 12.2.1 可計(jì)算與計(jì)算復(fù)雜性327 12.2.2 時(shí)間復(fù)雜性328 12.2.3 O符號(hào)329 12.2.4 算法的時(shí)間復(fù)雜性分析330 12.2.5 算法的空間復(fù)雜性330 12.3 問題分析與算法優(yōu)化331 12.3.1 完全平方數(shù)331 12.3.2 約瑟夫問題332 12.3.3 哥德巴赫猜想337 12.4 遞歸340 12.5 動(dòng)態(tài)規(guī)劃343 12.6 回溯346 12.7 習(xí)題350 參考文獻(xiàn)351
你還可能感興趣
我要評(píng)論
|