計(jì)算機(jī)二級C語言公共基礎(chǔ)知識點(diǎn)及考點(diǎn)_第1頁
計(jì)算機(jī)二級C語言公共基礎(chǔ)知識點(diǎn)及考點(diǎn)_第2頁
計(jì)算機(jī)二級C語言公共基礎(chǔ)知識點(diǎn)及考點(diǎn)_第3頁
計(jì)算機(jī)二級C語言公共基礎(chǔ)知識點(diǎn)及考點(diǎn)_第4頁
計(jì)算機(jī)二級C語言公共基礎(chǔ)知識點(diǎn)及考點(diǎn)_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

計(jì)算機(jī)二級公共根底學(xué)問點(diǎn):1.算法的4個(gè)特性是:確定性,可行性,有窮性,擁有足夠的情報(bào)(可以沒有輸入但確定要有輸出)2.一個(gè)算法通常由兩種根本要素組成:一是對數(shù)據(jù)對象的運(yùn)算和操作,二是算法的限制構(gòu)造。3.算法設(shè)計(jì)的根本方法主要有:列舉法,歸納法,遞推,遞歸和減半遞推技術(shù)4.常用的存儲構(gòu)造有:依次,鏈接,索引5.堆排序:2(n)

快速排序:n(1)/2

最壞6.數(shù)據(jù)流程圖中:箭頭數(shù)據(jù)流程序流程圖中:箭頭事物流7.數(shù)據(jù)庫系統(tǒng)在其內(nèi)部三級形式:概念形式,內(nèi)部形式,外部形式;8.過程設(shè)計(jì)語言〔〕是構(gòu)造化的英語和偽碼,是一種混合語言9.用戶參及物理設(shè)計(jì)的內(nèi)容有索引設(shè)計(jì),集簇設(shè)計(jì)和分區(qū)設(shè)計(jì)等三種10.衡量模塊獨(dú)立程度的度量標(biāo)準(zhǔn):耦合和內(nèi)聚12.數(shù)據(jù)庫設(shè)計(jì)包括:概念設(shè)計(jì)和邏輯設(shè)計(jì)13.數(shù)據(jù)庫的物理構(gòu)造主要指數(shù)據(jù)庫的存儲記錄格式,存儲記錄支配和存取方法16.源程序文檔化時(shí)程序應(yīng)加注釋。注釋一般分為序言性注釋和功能性注釋18.構(gòu)造化程序設(shè)計(jì)的主要方法是自頂向下,逐步求精,模塊化,限制運(yùn)用語句19.在面對對象的方法中,類的實(shí)例成為對象20.在面對對象的方法中,干脆反映了用戶對目的系統(tǒng)的要求的模型是功能模型21.對象有三種成分:標(biāo)識,屬性和方法22.軟件工程探討的主要內(nèi)容:軟件開發(fā)技術(shù)和軟件工程管理23.軟件工程的三要素:方法,工具和過程24.軟件是程序,數(shù)據(jù)和文檔的集合25.軟件工程的原則包括:抽象,信息隱藏,模塊化,部分化,確定性,一樣性,完備性和可驗(yàn)證性27.軟件需求分析階段的工作:需求獲得,需求分析,編寫需求規(guī)格說明書,需求評審28.在構(gòu)造化分析方法中,用于描繪系統(tǒng)中所用到的全部數(shù)據(jù)和文件的文檔稱為數(shù)據(jù)字典30.軟件設(shè)計(jì)的根本原則:抽象,模塊化,信息隱藏,模塊獨(dú)立性31.數(shù)據(jù)流程圖的類型:變換型和事務(wù)型32.好的軟件設(shè)計(jì)構(gòu)造通常頂層高扇出,中間扇出較少,底層高扇出34.常用圖形描繪工具有程序流程圖,盒圖盒問題分析圖37.在軟件生命周期中,能精確的確定軟件系統(tǒng)必需做什么和必需具備哪些功能的階段是需求分析39.對象是屬性和方法的封裝體,操作是對象的動態(tài)性屬性40.在數(shù)據(jù)管理技術(shù)的開展過程中,閱歷了人工管理階段,文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段,其中數(shù)據(jù)獨(dú)立性最高的是數(shù)據(jù)庫系統(tǒng)42.關(guān)系數(shù)據(jù)庫管理系統(tǒng)能使現(xiàn)的特地關(guān)系運(yùn)算包括選擇,投影,連接43.數(shù)據(jù)的存儲構(gòu)造是指數(shù)據(jù)的邏輯構(gòu)造在計(jì)算機(jī)中的表示44.檢查軟件產(chǎn)品是否符合需求定義的過程稱為確認(rèn)測試47.在關(guān)系數(shù)據(jù)庫中,用來表示實(shí)體之間關(guān)系的是二維表48.將E-R圖轉(zhuǎn)換到關(guān)系形式時(shí),實(shí)體及聯(lián)絡(luò)都可以表示成關(guān)系54.數(shù)據(jù)庫應(yīng)用系統(tǒng)由數(shù)據(jù)庫系統(tǒng),應(yīng)用軟件和應(yīng)用界面組成55.數(shù)據(jù)模型所描繪的內(nèi)容:數(shù)據(jù)構(gòu)造,數(shù)據(jù)操作,數(shù)據(jù)約束。56.數(shù)據(jù)庫的物理構(gòu)造主要指數(shù)據(jù)庫的存儲記錄格式,存儲記錄支配和存取方法57.數(shù)據(jù)獨(dú)立性是數(shù)據(jù)及程序間的互不依靠性,即數(shù)據(jù)庫中數(shù)據(jù)獨(dú)立于應(yīng)用程序而不依靠于應(yīng)用程序。也就是說,數(shù)據(jù)的邏輯構(gòu)造、存儲構(gòu)造及存取方式的變更不會影響應(yīng)用程序。58.面對對象的方法包括:對象,繼承,類59.可以給出數(shù)據(jù)庫物理存儲構(gòu)造及物理存取方法的是內(nèi)形式60.軟件的調(diào)試方法主要有:強(qiáng)行排錯(cuò)法、回溯法和緣由解除法61.數(shù)據(jù)字典是各類數(shù)據(jù)描繪的集合,它通常包括5個(gè)部分,即數(shù)據(jù)項(xiàng),是數(shù)據(jù)的最小單位;數(shù)據(jù)構(gòu)造,是假設(shè)干數(shù)據(jù)項(xiàng)有意義的集合;數(shù)據(jù)流,可以是數(shù)據(jù)項(xiàng),也可以是數(shù)據(jù)構(gòu)造,表示某一處理過程的輸入或輸出;數(shù)據(jù)存儲,處理過程中存取的數(shù)據(jù),常常是手工憑證、手工文檔或計(jì)算機(jī)文件;處理過程。62.軟件具有以下特點(diǎn):①軟件是一種邏輯實(shí)體,而不是物理實(shí)體,具有抽象性;②軟件的消費(fèi)過程及硬件不同,它沒有明顯的制作過程;③軟件在運(yùn)行、運(yùn)用期間不存在磨損、老化問題;④軟件的開發(fā)、運(yùn)行對計(jì)算機(jī)系統(tǒng)具有依靠性,受計(jì)算機(jī)系統(tǒng)的限制,這導(dǎo)致軟件移植的問題;⑤軟件困難性高,本錢昂貴;⑥軟件開發(fā)涉及諸多的社會因素。63.在構(gòu)造化方法中,軟件功能分解屬于以下軟件開發(fā)中的階段是總體設(shè)計(jì)64語言又稱為構(gòu)造化查詢語65.數(shù)據(jù)處理的最小單位是數(shù)據(jù)項(xiàng)66.數(shù)據(jù)庫設(shè)計(jì)是數(shù)據(jù)庫應(yīng)用的核心67.數(shù)據(jù)流的類型有變換型和事務(wù)型68.數(shù)據(jù)庫系統(tǒng)中實(shí)現(xiàn)各種數(shù)據(jù)管理功能的核心軟件稱為數(shù)據(jù)庫管理系統(tǒng)69.面對對象的設(shè)計(jì)方法及傳統(tǒng)的的面對過程的方法有本質(zhì)不同,它的根本原理是運(yùn)用現(xiàn)實(shí)世界的概念抽象地思索問題從而自然地解決問題70.數(shù)據(jù)模型所描繪的內(nèi)容有3個(gè)部分,它們是數(shù)據(jù)構(gòu)造、數(shù)據(jù)操作和數(shù)據(jù)約束。其中,數(shù)據(jù)模型中的數(shù)據(jù)構(gòu)造主要描繪數(shù)據(jù)的類型、內(nèi)容、性質(zhì),以及數(shù)據(jù)庫的聯(lián)絡(luò)等;數(shù)據(jù)操作主要是描繪在相應(yīng)數(shù)據(jù)構(gòu)造上的操作類型及操作方式。71.棧的根本運(yùn)算有三種:入棧、退棧和讀出棧頂元素72.視圖設(shè)計(jì)一般有3種設(shè)計(jì)次序,它們分別是自頂向下、自底向上和由內(nèi)向外73.在面對對象方法中,信息隱藏是通過對象的封裝性來實(shí)現(xiàn)的。74.軟件維護(hù)活動包括以下幾類:改正性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù)。75.數(shù)據(jù)庫管理系統(tǒng)常見的數(shù)據(jù)模型有層次模型、網(wǎng)狀模型和關(guān)系模型第1章數(shù)據(jù)構(gòu)造及算法經(jīng)過對部分考生的調(diào)查以及對近真題的總結(jié)分析,筆試部分常??疾斓氖撬惴ɡщy度、數(shù)據(jù)構(gòu)造的概念、棧、二叉樹的遍歷、二分法查找,讀者應(yīng)對此部分進(jìn)展重點(diǎn)學(xué)習(xí)。具體重點(diǎn)學(xué)習(xí)學(xué)問點(diǎn):1.算法的概念、算法時(shí)間困難度及空間困難度的概念2.?dāng)?shù)據(jù)構(gòu)造的定義、數(shù)據(jù)邏輯構(gòu)造及物理構(gòu)造的定義3.棧的定義及其運(yùn)算、線性鏈表的存儲方式4.樹及二叉樹的概念、二叉樹的根本性質(zhì)、完全二叉樹的概念、二叉樹的遍歷5.二分查找法6.冒泡排序法算法考點(diǎn)1算法的根本概念30%,計(jì)算機(jī)解題的過程事實(shí)上是在施行某種算法,這種算法稱為計(jì)算機(jī)算法。1.算法的根本特征:可行性、確定性、有窮性、擁有足夠的情報(bào)。2.算法的根本要素:〔1〕算法中對數(shù)據(jù)的運(yùn)算和操作一個(gè)算法由兩種根本要素組成:一是對數(shù)據(jù)對象的運(yùn)算和操作;二是算法的限制構(gòu)造。在一般的計(jì)算機(jī)系統(tǒng)中,根本的運(yùn)算和操作有以下4類:算術(shù)運(yùn)算、邏輯運(yùn)算、關(guān)系運(yùn)算和數(shù)據(jù)傳輸?!?〕算法的限制構(gòu)造:算法中各操作之間的執(zhí)行依次稱為算法的限制構(gòu)造。描繪算法的工具通常有傳統(tǒng)流程圖、構(gòu)造化流程圖、算法描繪語言等。一個(gè)算法一般都可以用依次、選擇、循環(huán)3種根本限制構(gòu)造組合而成??键c(diǎn)2算法困難度70%,1.算法的時(shí)間困難度算法的時(shí)間困難度是指執(zhí)行算法所須要的計(jì)算工作量。同一個(gè)算法用不同的語言實(shí)現(xiàn),或者用不同的編譯程序進(jìn)展編譯,或者在不同的計(jì)算機(jī)上運(yùn)行,效率均不同。這說明運(yùn)用確定的時(shí)間單位衡量算法的效率是不相宜的。撇開這些及計(jì)算機(jī)硬件、軟件有關(guān)的因素,可以認(rèn)為一個(gè)特定算法"運(yùn)行工作量"的大小,只依靠于問題的規(guī)?!餐ǔS谜麛?shù)n表示〕,它是問題規(guī)模的函數(shù)。即算法的工作量〔n〕2.算法的空間困難度算法的空間困難度是指執(zhí)行這個(gè)算法所須要的內(nèi)存空間。一個(gè)算法所占用的存儲空間包括算法程序所占的空間、輸入的初始數(shù)據(jù)所占的存儲空間以及算法執(zhí)行過程中所須要的額外空間。其中額外空間包括算法程序執(zhí)行過程中的工作單元以及某種數(shù)據(jù)構(gòu)造所須要的附加存儲空間。假設(shè)額外空間量相對于問題規(guī)模來說是常數(shù),則稱該算法是原地工作的。在很多實(shí)際問題中,為了削減算法所占的存儲空間,通常承受壓縮存儲技術(shù),以便盡量削減不必要的額外空間。疑難解答:算法的工作量用什么來計(jì)算?算法的工作量用算法所執(zhí)行的根本運(yùn)算次數(shù)來計(jì)算,而算法所執(zhí)行的根本運(yùn)算次數(shù)是問題規(guī)模的函數(shù),即算法的工作量〔n〕,其中n是問題的規(guī)模。數(shù)據(jù)構(gòu)造的根本概念考點(diǎn)3數(shù)據(jù)構(gòu)造的定義70%,數(shù)據(jù)構(gòu)造作為計(jì)算機(jī)的一門學(xué)科,主要探討和探討以下三個(gè)方面:〔1〕數(shù)據(jù)集合中個(gè)數(shù)據(jù)元素之間所固有的邏輯關(guān)系,即數(shù)據(jù)的邏輯構(gòu)造;〔2〕在對數(shù)據(jù)元素進(jìn)展處理時(shí),各數(shù)據(jù)元素在計(jì)算機(jī)中的存儲關(guān)系,即數(shù)據(jù)的存儲構(gòu)造;〔3〕對各種數(shù)據(jù)構(gòu)造進(jìn)展的運(yùn)算。數(shù)據(jù):是對客觀事物的符號表示,在計(jì)算機(jī)科學(xué)中是指全部能輸入到計(jì)算機(jī)中并被計(jì)算機(jī)程序處理的符號的總稱。數(shù)據(jù)元素:是數(shù)據(jù)的根本單位,在計(jì)算機(jī)程序中通常作為一個(gè)整體進(jìn)展考慮和處理。數(shù)據(jù)對象:是性質(zhì)一樣的數(shù)據(jù)元素的集合,是數(shù)據(jù)的一個(gè)子集。數(shù)據(jù)的邏輯構(gòu)造是對數(shù)據(jù)元素之間的邏輯關(guān)系的描繪,它可以用一個(gè)數(shù)據(jù)元素的集合和定義在此集合中的假設(shè)干關(guān)系來表示。數(shù)據(jù)的邏輯構(gòu)造有兩個(gè)要素:一是數(shù)據(jù)元素的集合,通常記為D;二是D上的關(guān)系,它反映了數(shù)據(jù)元素之間的前后件關(guān)系,通常記為R。一個(gè)數(shù)據(jù)構(gòu)造可以表示成〔D,R〕其中B表示數(shù)據(jù)構(gòu)造。為了反映D中各數(shù)據(jù)元素之間的前后件關(guān)系,一般用二元組來表示。數(shù)據(jù)的邏輯構(gòu)造在計(jì)算機(jī)存儲空間中的存放形式稱為數(shù)據(jù)的存儲構(gòu)造〔也稱數(shù)據(jù)的物理構(gòu)造〕。由于數(shù)據(jù)元素在計(jì)算機(jī)存儲空間中的位置關(guān)系可能及邏輯關(guān)系不同,因此,為了表示存放在計(jì)算機(jī)存儲空間中的各數(shù)據(jù)元素之間的邏輯關(guān)系〔即前后件關(guān)系〕,在數(shù)據(jù)的存儲構(gòu)造中,不僅要存放各數(shù)據(jù)元素的信息,還須要存放各數(shù)據(jù)元素之間的前后件關(guān)系的信息。一種數(shù)據(jù)的邏輯構(gòu)造根據(jù)須要可以表示成多種存儲構(gòu)造,常用的存儲構(gòu)造有依次、鏈接、索引等存儲構(gòu)造。而承受不同的存儲構(gòu)造,其數(shù)據(jù)處理的效率是不同的。因此,在進(jìn)展數(shù)據(jù)處理時(shí),選擇相宜的存儲構(gòu)造是很重要的??键c(diǎn)4線性構(gòu)造及非線性構(gòu)造30%,根據(jù)數(shù)據(jù)構(gòu)造中各數(shù)據(jù)元素之間前后件關(guān)系的困難程度,一般將數(shù)據(jù)構(gòu)造分為兩大類型:線性構(gòu)造及非線性構(gòu)造。假設(shè)一個(gè)非空的數(shù)據(jù)構(gòu)造滿意以下兩個(gè)條件:〔1〕有且只有一個(gè)根結(jié)點(diǎn);〔2〕每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件。則稱該數(shù)據(jù)構(gòu)造為線性構(gòu)造。線性構(gòu)造又稱線性表。在一個(gè)線性構(gòu)造中插入或刪除任何一個(gè)結(jié)點(diǎn)后還應(yīng)是線性構(gòu)造。假設(shè)一個(gè)數(shù)據(jù)構(gòu)造不是線性構(gòu)造,則稱之為非線性構(gòu)造。疑難解答:空的數(shù)據(jù)構(gòu)造是線性構(gòu)造還是非線性構(gòu)造?一個(gè)空的數(shù)據(jù)構(gòu)造終究是屬于線性構(gòu)造還是屬于非線性構(gòu)造,這要根據(jù)具體狀況來確定。假設(shè)對該數(shù)據(jù)構(gòu)造的算法是按線性構(gòu)造的規(guī)則來處理的,則屬于線性構(gòu)造;否則屬于非線性構(gòu)造。棧及線性鏈表考點(diǎn)5棧及其根本運(yùn)算,1.棧的根本概念棧是限定只在一端進(jìn)展插入及刪除的線性表,通常稱插入、刪除的這一端為棧頂,另一端為棧底。當(dāng)表中沒有元素時(shí)稱為空棧。棧頂元素總是后被插入的元素,從而也是最先被刪除的元素;棧底元素總是最先被插入的元素,從而也是最終才能被刪除的元素。棧是根據(jù)"先進(jìn)后出"或"后進(jìn)先出"的原則組織數(shù)據(jù)的。2.棧的依次存儲及其運(yùn)算用一維數(shù)組S〔1∶m〕作為棧的依次存儲空間,其中m為最大容量。在棧的依次存儲空間S〔1∶m〕中,S〔〕為棧底元素,S〔〕為棧頂元素。0表示???;表示棧滿。棧的根本運(yùn)算有三種:入棧、退棧及讀棧頂元素?!?〕入棧運(yùn)算:入棧運(yùn)算是指在棧頂位置插入一個(gè)新元素。首先將棧頂指針加一〔即加1〕,然后將新元素插入到棧頂指針指向的位置。當(dāng)棧頂指針已經(jīng)指向存儲空間的最終一個(gè)位置時(shí),說明棧空間已滿,不行能再進(jìn)展入棧操作。這種狀況稱為棧"上溢"錯(cuò)誤。〔2〕退棧運(yùn)算:退棧是指取出棧頂元素并賦給一個(gè)指定的變量。首先將棧頂元素〔棧頂指針指向的元素〕賦給一個(gè)指定的變量,然后將棧頂指針減一〔即減1〕。當(dāng)棧頂指針為0時(shí),說明???,不行進(jìn)展退棧操作。這種狀況稱為棧的"下溢"錯(cuò)誤?!?〕讀棧頂元素:讀棧頂元素是指將棧頂元素賦給一個(gè)指定的變量。這個(gè)運(yùn)算不刪除棧頂元素,只是將它賦給一個(gè)變量,因此棧頂指針不會變更。當(dāng)棧頂指針為0時(shí),說明???,讀不到棧頂元素。小技巧:棧是根據(jù)"先進(jìn)后出"或"后進(jìn)先出"的原則組織數(shù)據(jù),但是出棧方式有多種選擇,在考題中常??疾旄鞣N不同的出棧方式。考點(diǎn)6線性鏈表的根本概念30%,在鏈?zhǔn)酱鎯Ψ绞街校竺總€(gè)結(jié)點(diǎn)由兩部分組成:一部分用于存放數(shù)據(jù)元素值,稱為數(shù)據(jù)域,另一部分用于存放指針,稱為指針域。其中指針用于指向該結(jié)點(diǎn)的前一個(gè)或后一個(gè)結(jié)點(diǎn)〔即前件或后件〕。鏈?zhǔn)酱鎯Ψ绞郊瓤捎糜诒硎揪€性構(gòu)造,也可用于表示非線性構(gòu)造?!?〕線性鏈表線性表的鏈?zhǔn)酱鎯?gòu)造稱為線性鏈表。在某些應(yīng)用中,對線性鏈表中的每個(gè)結(jié)點(diǎn)設(shè)置兩個(gè)指針,一個(gè)稱為左指針,用以指向其前件結(jié)點(diǎn);另一個(gè)稱為右指針,用以指向其后件結(jié)點(diǎn)。這樣的表稱為雙向鏈表?!?〕帶鏈的棧棧也是線性表,也可以承受鏈?zhǔn)酱鎯?gòu)造。帶鏈的??梢杂脕硭鸭?jì)算機(jī)存儲空間中全部空閑的存儲結(jié)點(diǎn),這種帶鏈的棧稱為可利用棧。疑難解答:在鏈?zhǔn)綐?gòu)造中,存儲空間位置關(guān)系及邏輯關(guān)系是什么?在鏈?zhǔn)酱鎯?gòu)造中,存儲數(shù)據(jù)構(gòu)造的存儲空間可以不連續(xù),各數(shù)據(jù)結(jié)點(diǎn)的存儲依次及數(shù)據(jù)元素之間的邏輯關(guān)系可以不一樣,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來確定的。樹及二叉樹考點(diǎn)7樹及二叉樹及其根本性質(zhì)1、樹的根本概念樹(〕是一種簡潔的非線性構(gòu)造。在樹構(gòu)造中,每一個(gè)結(jié)點(diǎn)只有一個(gè)前件,稱為父結(jié)點(diǎn),沒有前件的結(jié)點(diǎn)只有一個(gè),稱為樹的根結(jié)點(diǎn)。每一個(gè)結(jié)點(diǎn)可以有多個(gè)后件,它們稱為該結(jié)點(diǎn)的子結(jié)點(diǎn)。沒有后件的結(jié)點(diǎn)稱為葉子結(jié)點(diǎn)。在樹構(gòu)造中,一個(gè)結(jié)點(diǎn)所擁有的后件個(gè)數(shù)稱為該結(jié)點(diǎn)的度。葉子結(jié)點(diǎn)的度為0。在樹中,全部結(jié)點(diǎn)中的最大的度稱為樹的度。2、二叉樹及其根本性質(zhì)〔1〕二叉樹的定義二叉樹是一種很有用的非線性構(gòu)造,具有以下兩個(gè)特點(diǎn):①非空二叉樹只有一個(gè)根結(jié)點(diǎn);②每一個(gè)結(jié)點(diǎn)最多有兩棵子樹,且分別稱為該結(jié)點(diǎn)的左子樹和右子樹。由以上特點(diǎn)可以看出,在二叉樹中,每一個(gè)結(jié)點(diǎn)的度最大為2,即全部子樹〔左子樹或右子樹〕也均為二叉樹,而樹構(gòu)造中的每一個(gè)結(jié)點(diǎn)的度可以是隨意的。另外,二叉樹中的每個(gè)結(jié)點(diǎn)的子樹被明顯地分為左子樹和右子樹。在二叉樹中,一個(gè)結(jié)點(diǎn)可以只有左子樹而沒有右子樹,也可以只有右子樹而沒有左子樹。當(dāng)一個(gè)結(jié)點(diǎn)既沒有左子樹也沒有右子樹時(shí),該結(jié)點(diǎn)即為葉子結(jié)點(diǎn)?!?〕二叉樹的根本性質(zhì)二叉樹具有以下幾特性質(zhì):性質(zhì)1:在二叉樹的第k層上,最多有21〔k≥1〕個(gè)結(jié)點(diǎn);性質(zhì)2:深度為m的二叉樹最多有21個(gè)結(jié)點(diǎn);性質(zhì)3:在隨意一棵二叉樹中,度為0的結(jié)點(diǎn)〔即葉子結(jié)點(diǎn)〕總是比度為2的結(jié)點(diǎn)多一個(gè)。性質(zhì)4:具有n個(gè)結(jié)點(diǎn)的二叉樹,其深度至少為[2n]+1,其中[2n]表示取2n的整數(shù)部分。小技巧:在二叉樹的遍歷中,無論是前序遍歷,中序遍歷還是后序遍歷,二叉樹的葉子結(jié)點(diǎn)的先后依次都是不變的。3、滿二叉樹及完全二叉樹滿二叉樹是指這樣的一種二叉樹:除最終一層外,每一層上的全部結(jié)點(diǎn)都有兩個(gè)子結(jié)點(diǎn)。在滿二叉樹中,每一層上的結(jié)點(diǎn)數(shù)都到達(dá)最大值,即在滿二叉樹的第k層上有21個(gè)結(jié)點(diǎn),且深度為m的滿二叉樹有2m-1個(gè)結(jié)點(diǎn)。完全二叉樹是指這樣的二叉樹:除最終一層外,每一層上的結(jié)點(diǎn)數(shù)均到達(dá)最大值;在最終一層上只缺少右邊的假設(shè)干結(jié)點(diǎn)。對于完全二叉樹來說,葉子結(jié)點(diǎn)只可能在層次最大的兩層上出現(xiàn):對于任何一個(gè)結(jié)點(diǎn),假設(shè)其右分支下的子孫結(jié)點(diǎn)的最大層次為p,則其左分支下的子孫結(jié)點(diǎn)的最大層次或?yàn)閜,或?yàn)?。完全二叉樹具有以下兩特性質(zhì):性質(zhì)5:具有n個(gè)結(jié)點(diǎn)的完全二叉樹的深度為[2n]+1。性質(zhì)6:設(shè)完全二叉樹共有n個(gè)結(jié)點(diǎn)。假設(shè)從根結(jié)點(diǎn)開始,按層次〔每一層從左到右〕用自然數(shù)1,2,……,n給結(jié)點(diǎn)進(jìn)展編號,則對于編號為k〔1,2,……,n〕的結(jié)點(diǎn)有以下結(jié)論:①假設(shè)1,則該結(jié)點(diǎn)為根結(jié)點(diǎn),它沒有父結(jié)點(diǎn);假設(shè)k>1,則該結(jié)點(diǎn)的父結(jié)點(diǎn)編號為〔2〕。②假設(shè)2k≤n,則編號為k的結(jié)點(diǎn)的左子結(jié)點(diǎn)編號為2k;否則該結(jié)點(diǎn)無左子結(jié)點(diǎn)〔明顯也沒有右子結(jié)點(diǎn)〕。③假設(shè)21≤n,則編號為k的結(jié)點(diǎn)的右子結(jié)點(diǎn)編號為21;否則該結(jié)點(diǎn)無右子結(jié)點(diǎn)。考點(diǎn)8二叉樹的遍歷30%,在遍歷二叉樹的過程中,一般先遍歷左子樹,再遍歷右子樹。在先左后右的原則下,根據(jù)訪問根結(jié)點(diǎn)的次序,二叉樹的遍歷分為三類:前序遍歷、中序遍歷和后序遍歷?!?〕前序遍歷:先訪問根結(jié)點(diǎn)、然后遍歷左子樹,最終遍歷右子樹;并且,在遍歷左、右子樹時(shí),照舊先訪問根結(jié)點(diǎn),然后遍歷左子樹,最終遍歷右子樹。〔2〕中序遍歷:先遍歷左子樹、然后訪問根結(jié)點(diǎn),最終遍歷右子樹;并且,在遍歷左、右子樹時(shí),照舊先遍歷左子樹,然后訪問根結(jié)點(diǎn),最終遍歷右子樹。〔3〕后序遍歷:先遍歷左子樹、然后遍歷右子樹,最終訪問根結(jié)點(diǎn);并且,在遍歷左、右子樹時(shí),照舊先遍歷左子樹,然后遍歷右子樹,最終訪問根結(jié)點(diǎn)。疑難解答:樹及二叉樹的不同之處是什么?在二叉樹中,每一個(gè)結(jié)點(diǎn)的度最大為2,即全部子樹〔左子樹或右子樹〕也均為二叉樹,而樹構(gòu)造中的每一個(gè)結(jié)點(diǎn)的度可以是隨意的。查找技術(shù)考點(diǎn)9依次查找30%查找是指在一個(gè)給定的數(shù)據(jù)構(gòu)造中查找某個(gè)指定的元素。從線性表的第一個(gè)元素開始,依次將線性表中的元素及被查找的元素相比較,假設(shè)相等則表示查找勝利;假設(shè)線性表中全部的元素都及被查找元素進(jìn)展了比較但都不相等,則表示查找失敗。在以下兩種狀況下也只能承受依次查找:〔1〕假設(shè)線性表為無序表,則不管是依次存儲構(gòu)造還是鏈?zhǔn)酱鎯?gòu)造,只能用依次查找?!?〕即使是有序線性表,假設(shè)承受鏈?zhǔn)酱鎯?gòu)造,也只能用依次查找??键c(diǎn)10二分法查找30%二分法只適用于依次存儲的,按非遞減排列的有序表,其方法如下:設(shè)有序線性表的長度為n,被查找的元素為i,〔1〕將i及線性表的中間項(xiàng)進(jìn)展比較;〔2〕假設(shè)i及中間項(xiàng)的值相等,則查找勝利;〔3〕假設(shè)i小于中間項(xiàng),則在線性表的前半部分以一樣的方法查找;〔4〕假設(shè)i大于中間項(xiàng),則在線性表的后半部分以一樣的方法查找。疑難解答:二分查找法適用于哪種狀況?二分查找法只適用于依次存儲的有序表。在此所說的有序表是指線性表中的元素按值非遞減排列〔即從小到大,但允許相鄰元素值相等〕。這個(gè)過程始終進(jìn)展到查找勝利或子表長度為0為止。對于長度為n的有序線性表,在最壞狀況下,二分查找只須要比較2n次。排序技術(shù)考點(diǎn)11交換類排序法30%,冒泡排序法和快速排序法都屬于交換類排序法?!?〕冒泡排序法首先,從表頭開始往后掃描線性表,逐次比較相鄰兩個(gè)元素的大小,假設(shè)前面的元素大于后面的元素,則將它們互換,不斷地將兩個(gè)相鄰元素中的大者往后挪動,最終最大者到了線性表的最終。然后,從后到前掃描剩下的線性表,逐次比較相鄰兩個(gè)元素的大小,假設(shè)后面的元素小于前面的元素,則將它們互換,不斷地將兩個(gè)相鄰元素中的小者往前挪動,最終最小者到了線性表的最前面。對剩下的線性表重復(fù)上述過程,直到剩下的線性表變空為止,此時(shí)已經(jīng)排好序。在最壞的狀況下,冒泡排序須要比較次數(shù)為n〔n-1〕/2。〔2〕快速排序法它的根本思想是:任取待排序序列中的某個(gè)元素作為基準(zhǔn)〔一般取第一個(gè)元素〕,通過一趟排序,將待排元素分為左右兩個(gè)子序列,左子序列元素的排序碼均小于或等于基準(zhǔn)元素的排序碼,右子序列的排序碼則大于基準(zhǔn)元素的排序碼,然后分別對兩個(gè)子序列接著進(jìn)展排序,直至整個(gè)序列有序。疑難解答:冒泡排序和快速排序的平均執(zhí)行時(shí)間分別是多少?冒泡排序法的平均執(zhí)行時(shí)間是O〔n2〕,而快速排序法的平均執(zhí)行時(shí)間是O〔2n〕。第2章程序設(shè)計(jì)根底經(jīng)過對部分考生的調(diào)查以及對近真題的總結(jié)分析,筆試部分常??疾斓氖菢?gòu)造化程序設(shè)計(jì)的原則、面對對象方法的根本概念,讀者應(yīng)對此部分進(jìn)展重點(diǎn)學(xué)習(xí)。具體重點(diǎn)學(xué)習(xí)學(xué)問點(diǎn):1.構(gòu)造化程序設(shè)計(jì)方法的四個(gè)原則2.對象、類、消息、繼承的概念、類及實(shí)例的區(qū)分構(gòu)造化程序設(shè)計(jì)考點(diǎn)1構(gòu)造化程序設(shè)計(jì)的原則30%,20世紀(jì)70頭提出了"構(gòu)造化程序設(shè)計(jì)"的思想和方法。構(gòu)造化程序設(shè)計(jì)方法引入了工程化思想和構(gòu)造化思想,使大型軟件的開發(fā)和編程得到了極大的改善。構(gòu)造化程序設(shè)計(jì)方法的主要原則為:自頂向下、逐步求精、模塊化和限制運(yùn)用語句。疑難解答:如何進(jìn)展自頂向下設(shè)計(jì)方法?程序設(shè)計(jì)時(shí),應(yīng)先考慮總體,后考慮微小環(huán)節(jié);先考慮全局目的,后考慮部分目的;不要一開始就過多追求眾多的微小環(huán)節(jié),先從最上層總目的開始設(shè)計(jì),逐步使問題具體化。面對對象的程序設(shè)計(jì)考點(diǎn)2面對對象方法的根本概念考試鏈接:70%,面對對象方法涵蓋對象及對象屬性及方法、類、繼承、多態(tài)性幾個(gè)根本要素。〔1〕對象通常把對對象的操作也稱為方法或效勞。屬性即對象所包含的信息,它在設(shè)計(jì)對象時(shí)確定,一般只能通過執(zhí)行對象的操作來變更。屬性值應(yīng)當(dāng)指的是純粹的數(shù)據(jù)值,而不能指對象。操作描繪了對象執(zhí)行的功能,假設(shè)通過信息的傳遞,還可以為其他對象運(yùn)用。對象具有如下特征:標(biāo)識惟一性、分類性、多態(tài)性、封裝性、模塊獨(dú)立性?!?〕類和實(shí)例類是具有共同屬性、共同方法的對象的集合。它描繪了屬于該對象類型的全部對象的性質(zhì),而一個(gè)對象則是其對應(yīng)類的一個(gè)實(shí)例。類是關(guān)于對象性質(zhì)的描繪,它同對象一樣,包括一組數(shù)據(jù)屬性和在數(shù)據(jù)上的一組合法操作。〔3〕消息消息是實(shí)例之間傳遞的信息,它懇求對象執(zhí)行某一處理或答復(fù)某一要求的信息,它統(tǒng)一了數(shù)據(jù)流和限制流。一個(gè)消息由三部分組成:接收消息的對象的名稱、消息標(biāo)識符〔消息名〕和零個(gè)或多個(gè)參數(shù)。〔4〕繼承廣義地說,繼承是指可以干脆獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們。繼承分為單繼承及多重繼承。單繼承是指,一個(gè)類只允許有一個(gè)父類,即類等級為樹形構(gòu)造。多重繼承是指,一個(gè)類允許有多個(gè)父類。〔5〕多態(tài)性對象根據(jù)所接收的消息而做出動作,同樣的消息被不同的對象接收時(shí)可導(dǎo)致完全不同的行動,該現(xiàn)象稱為多態(tài)性。疑難解答:能舉一下現(xiàn)實(shí)中的對象及其屬性和操作嗎?一輛汽車是一個(gè)對象,它包含了汽車的屬性〔如顏色、型號等〕及其操作〔如啟動、剎車等〕。一個(gè)窗口是對象,它包含了窗口的屬性〔如大小、顏色等〕及其操作〔如翻開、關(guān)閉等〕。第3章軟件工程根底經(jīng)過對部分考生的調(diào)查以及對近真題的總結(jié)分析,筆試部分常??疾斓氖擒浖芷凇④浖O(shè)計(jì)的根本原理,軟件測試的目的、軟件調(diào)試的根本概念,讀者應(yīng)對此部分進(jìn)展重點(diǎn)學(xué)習(xí)。具體重點(diǎn)學(xué)習(xí)學(xué)問點(diǎn):1.軟件的概念、軟件生命周期的概念及各階段所包含的活動2.概要設(shè)計(jì)及具體設(shè)計(jì)的概念、模塊獨(dú)立性及其度量的標(biāo)準(zhǔn)、具體設(shè)計(jì)常用的工具3.軟件測試的目的、軟件測試的4個(gè)步驟、4.軟件調(diào)試的任務(wù)軟件工程根本概念考點(diǎn)1軟件定義及軟件特點(diǎn)70%,軟件指的是計(jì)算機(jī)系統(tǒng)中及硬件互相依存的另一部分,包括程序、數(shù)據(jù)和相關(guān)文檔的完好集合。程序是軟件開發(fā)人員根據(jù)用戶需求開發(fā)的、用程序設(shè)計(jì)語言描繪的、相宜計(jì)算機(jī)執(zhí)行的指令序列。數(shù)據(jù)是使程序能正常操縱信息的數(shù)據(jù)構(gòu)造。文檔是及程序的開發(fā)、維護(hù)和運(yùn)用有關(guān)的圖文資料??梢姡浖蓛刹糠纸M成:〔1〕機(jī)器可執(zhí)行的程序和數(shù)據(jù);〔2〕機(jī)器不行執(zhí)行的,及軟件開發(fā)、運(yùn)行、維護(hù)、運(yùn)用等有關(guān)的文檔。軟件的特點(diǎn):〔1〕軟件是邏輯實(shí)體,而不是物理實(shí)體,具有抽象性;〔2〕沒有明顯的制作過程,可進(jìn)展大量的復(fù)制;〔3〕運(yùn)用期間不存在磨損、老化問題;〔4〕軟件的開發(fā)、運(yùn)行對計(jì)算機(jī)系統(tǒng)具有依靠性;〔5〕軟件困難性高,本錢昂貴;〔6〕軟件開發(fā)涉及諸多社會因素。根據(jù)應(yīng)用目的的不同,軟件可分應(yīng)用軟件、系統(tǒng)軟件和支撐軟件〔或工具軟件〕。小提示:應(yīng)用軟件是為解決特定領(lǐng)域的應(yīng)用而開發(fā)的軟件;系統(tǒng)軟件是計(jì)算機(jī)管理自身資源,進(jìn)步計(jì)算機(jī)運(yùn)用效率并為計(jì)算機(jī)用戶供應(yīng)各種效勞的軟件;支撐軟件是介于兩者之間,扶植用戶開發(fā)軟件的工具性軟件??键c(diǎn)2軟件工程過程及軟件生命周期30%,軟件產(chǎn)品從提出、實(shí)現(xiàn)、運(yùn)用維護(hù)到停頓運(yùn)用退役的過程稱為軟件生命周期。一般包括可行性分析探討及需求分析、設(shè)計(jì)、實(shí)現(xiàn)、測試、交付運(yùn)用以及維護(hù)等活動,如圖3-1所示。圖3-1軟件生命周期還可以將軟件生命周期分為如上圖所示的軟件定義、軟件開發(fā)和軟件運(yùn)行維護(hù)3個(gè)階段。生命周期的主要活動階段是:可行性探討及方案制定、需求分析、軟件設(shè)計(jì)、軟件施行、軟件測試及運(yùn)行及維護(hù)。構(gòu)造化設(shè)計(jì)方法考點(diǎn)3軟件設(shè)計(jì)的根本概念考試鏈接:70%,1.軟件設(shè)計(jì)的根底從技術(shù)觀點(diǎn)上看,軟件設(shè)計(jì)包括軟件構(gòu)造設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)、接口設(shè)計(jì)、過程設(shè)計(jì)。〔1〕構(gòu)造設(shè)計(jì)定義軟件系統(tǒng)各主要部件之間的關(guān)系;〔2〕數(shù)據(jù)設(shè)計(jì)將分析時(shí)創(chuàng)立的模型轉(zhuǎn)化為數(shù)據(jù)構(gòu)造的定義;〔3〕接口設(shè)計(jì)是描繪軟件內(nèi)部、軟件和協(xié)作系統(tǒng)之間以及軟件及人之間如何通信;〔4〕過程設(shè)計(jì)則是把系統(tǒng)構(gòu)造部件轉(zhuǎn)換為軟件的過程性描繪。從工程管理角度來看,軟件設(shè)計(jì)分兩步完成:概要設(shè)計(jì)和具體設(shè)計(jì)?!?〕概要設(shè)計(jì)將軟件需求轉(zhuǎn)化為軟件體系構(gòu)造、確定系統(tǒng)級接口、全局?jǐn)?shù)據(jù)構(gòu)造或數(shù)據(jù)庫形式;〔2〕具體設(shè)計(jì)確立每個(gè)模塊的實(shí)現(xiàn)算法和部分?jǐn)?shù)據(jù)構(gòu)造,用適當(dāng)方法表示算法和數(shù)據(jù)構(gòu)造的微小環(huán)節(jié)。2.軟件設(shè)計(jì)的根本原理〔1〕抽象:軟件設(shè)計(jì)中考慮模塊化解決方案時(shí),可以定出多個(gè)抽象級別。抽象的層次從概要設(shè)計(jì)到具體設(shè)計(jì)逐步降低?!?〕模塊化:模塊是指把一個(gè)待開發(fā)的軟件分解成假設(shè)干小的簡潔的部分。模塊化是指解決一個(gè)困難問題時(shí)自頂向下逐層把軟件系統(tǒng)劃分成假設(shè)干模塊的過程。〔3〕信息隱藏:信息隱藏是指在一個(gè)模塊內(nèi)包含的信息〔過程或數(shù)據(jù)〕,對于不須要這些信息的其他模塊來說是不能訪問的?!?〕模塊獨(dú)立性:模塊獨(dú)立性是指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且及其他模塊的聯(lián)絡(luò)最少且接口簡潔。模塊的獨(dú)立程度是評價(jià)設(shè)計(jì)好壞的重要度量標(biāo)準(zhǔn)。衡量軟件的模塊獨(dú)立性運(yùn)用耦合性和內(nèi)聚性兩個(gè)定性的度量標(biāo)準(zhǔn)。內(nèi)聚性是信息隱藏和部分化概念的自然擴(kuò)展。一個(gè)模塊的內(nèi)聚性越強(qiáng)則該模塊的模塊獨(dú)立性越強(qiáng)。一個(gè)模塊及其他模塊的耦合性越強(qiáng)則該模塊的模塊獨(dú)立性越弱。內(nèi)聚性是度量一個(gè)模塊功能強(qiáng)度的一個(gè)相對指標(biāo)。內(nèi)聚是從功能角度來衡量模塊的聯(lián)絡(luò),它描繪的是模塊內(nèi)的功能聯(lián)絡(luò)。內(nèi)聚有如下種類,它們之間的內(nèi)聚度由弱到強(qiáng)排列:間或內(nèi)聚、邏輯內(nèi)聚、時(shí)間內(nèi)聚、過程內(nèi)聚、通信內(nèi)聚、依次內(nèi)聚、功能內(nèi)聚。耦合性是模塊之間互相連接的嚴(yán)密程度的度量。耦合性取決于各個(gè)模塊之間接口的困難度、調(diào)用方式以及哪些信息通過接口。耦合可以分為以下幾種,它們之間的耦合度由高到低排列:內(nèi)容耦合、公共耦合、外部耦合、限制耦合、標(biāo)記耦合、數(shù)據(jù)耦合、非干脆耦合。在程序構(gòu)造中,各模塊的內(nèi)聚性越強(qiáng),則耦合性越弱。一般較優(yōu)秀的軟件設(shè)計(jì),應(yīng)盡量做到高內(nèi)聚,低耦合,即減弱模塊之間的耦合性和進(jìn)步模塊內(nèi)的內(nèi)聚性,有利于進(jìn)步模塊的獨(dú)立性。小提示:上面僅是對耦合機(jī)制進(jìn)展的一個(gè)分類??梢娨粋€(gè)模塊及其他模塊的耦合性越強(qiáng)則該模塊獨(dú)立性越弱。原則上講,模塊化設(shè)計(jì)總是渴望模塊之間的耦合表現(xiàn)為非干脆耦合方式。但是,由于問題所固有的困難性和構(gòu)造化設(shè)計(jì)的原則,非干脆耦合是不存在的??键c(diǎn)4具體設(shè)計(jì)考試鏈接:30%,具體設(shè)計(jì)的任務(wù)是為軟件構(gòu)造圖中的每個(gè)模塊確定實(shí)現(xiàn)算法和部分?jǐn)?shù)據(jù)構(gòu)造,用某種選定的表達(dá)表示工具算法和數(shù)據(jù)構(gòu)造的微小環(huán)節(jié)。具體過程設(shè)計(jì)的常用工具有:〔1〕圖形工具:程序流程圖,,,。〔2〕表格工具:斷定表?!?〕語言工具:〔偽碼〕。程序流程圖的5種限制構(gòu)造:依次型、選擇型、先推斷重復(fù)型、后推斷重復(fù)型和多分支選擇型。方框圖中僅含5種根本的限制構(gòu)造,即依次型、選擇型、多分支選擇型、重復(fù)型和重復(fù)型。圖表示5種根本限制構(gòu)造,即依次型、選擇型、多分支選擇型、重復(fù)型和重復(fù)型。過程設(shè)計(jì)語言〔〕也稱為構(gòu)造化的語言和偽碼,它是一種混合語言,承受英語的詞匯和構(gòu)造化程序設(shè)計(jì)語言,類似編程語言??梢杂删幊陶Z言轉(zhuǎn)換得到,也可以是特地為過程描繪而設(shè)計(jì)的。疑難解答:程序流程圖,圖,圖的限制構(gòu)造的異同點(diǎn)是什么?一樣點(diǎn)是三種圖都有依次構(gòu)造,選擇構(gòu)造和多分支選擇,并且圖和圖還有一樣的重復(fù)型、重復(fù)型;不同點(diǎn)是程序流程圖沒有重復(fù)型、重復(fù)型而有后推斷重復(fù)型和先推斷重復(fù)型。軟件測試考點(diǎn)5軟件測試的目的考試鏈接:70%,軟件測試是在軟件投入運(yùn)行前對軟件需求、設(shè)計(jì)、編碼的最終審核。其工作量、本錢占總工作量、總本錢的40%以上,而且具有較高的組織管理和技術(shù)難度?!?〕軟件測試是為了覺察錯(cuò)誤而執(zhí)行程序的過程;〔2〕一個(gè)好的測試用例是可以覺察至今尚未覺察的錯(cuò)誤的用例;〔3〕一個(gè)勝利的測試是覺察了至今尚未覺察的錯(cuò)誤的測試。考點(diǎn)6軟件測試的施行考試鏈接:30%,軟件測試過程分4個(gè)步驟,即單元測試、集成測試、驗(yàn)收測試和系統(tǒng)測試。單元測試是對軟件設(shè)計(jì)的最小單位模塊〔程序單元〕進(jìn)展正確性檢驗(yàn)測試。單元測試的技術(shù)可以承受靜態(tài)分析和動態(tài)測試。集成測試是測試和組裝軟件的過程,主要目的是覺察及接口有關(guān)的錯(cuò)誤,主要根據(jù)是概要設(shè)計(jì)說明書。集成測試所設(shè)計(jì)的內(nèi)容包括:軟件單元的接口測試、全局?jǐn)?shù)據(jù)構(gòu)造測試、邊界條件和非法輸入的測試等。集成測試時(shí)將模塊組裝成程序,通常承受兩種方式:非增量方式組裝和增量方式組裝。確認(rèn)測試的任務(wù)是驗(yàn)證軟件的功能和性能,以及其他特性是否滿意了需求規(guī)格說明中確定的各種需求,包括軟件配置是否完全、正確。確認(rèn)測試的施行首先運(yùn)用黑盒測試方法,對軟件進(jìn)展有效性測試,即驗(yàn)證被測軟件是否滿意需求規(guī)格說明確認(rèn)的標(biāo)準(zhǔn)。系統(tǒng)測試是通過測試確認(rèn)軟件,作為整個(gè)基于計(jì)算機(jī)系統(tǒng)的一個(gè)元素,及計(jì)算機(jī)硬件、外設(shè)、支撐軟件、數(shù)據(jù)和人員等其他系統(tǒng)元素組合在一起,在實(shí)際運(yùn)行〔運(yùn)用〕環(huán)境下對計(jì)算機(jī)系統(tǒng)進(jìn)展一系列的集成測試和確認(rèn)測試。系統(tǒng)測試的具體施行一般包括:功能測試、性能測試、操作測試、配置測試、外部接口測試、平安性測試等。軟件的調(diào)試考點(diǎn)7軟件調(diào)試的根本概念考試鏈接:70%,在對程序進(jìn)展了勝利的測試之后將進(jìn)入程序調(diào)試〔通常稱,即排錯(cuò)〕。程序的調(diào)試任務(wù)是診斷和改正程序中的錯(cuò)誤。調(diào)試主要在開發(fā)階段進(jìn)展。程序調(diào)試活動由兩部分組成,一是根據(jù)錯(cuò)誤的跡象確定程序中錯(cuò)誤的精確性質(zhì)、緣由和位置;二是對程序進(jìn)展修改,解除這個(gè)錯(cuò)誤。程序調(diào)試的根本步驟:〔1〕錯(cuò)誤定位。從錯(cuò)誤的外部表現(xiàn)形式入手,探討有關(guān)部分的程序,確定程序中出錯(cuò)位置,找出錯(cuò)誤的內(nèi)在緣由;〔2〕修改設(shè)計(jì)和代碼,以解除錯(cuò)誤;〔3〕進(jìn)展回來測試,防止引進(jìn)新的錯(cuò)誤。調(diào)試原則可以從以下兩個(gè)方面考慮:〔1〕確定錯(cuò)誤的性質(zhì)和位置時(shí)的考前須知分析思索及錯(cuò)誤征兆有關(guān)的信息;避開死胡同;只把調(diào)試工具當(dāng)作扶植手段來運(yùn)用;防止用探究法,最多只能把它當(dāng)作最終手段。〔2〕修改錯(cuò)誤原則在出現(xiàn)錯(cuò)誤的地方,很可能有別的錯(cuò)誤;修改錯(cuò)誤的一個(gè)常見失誤是只修改了這個(gè)錯(cuò)誤的征兆或這個(gè)錯(cuò)誤的表現(xiàn),而沒有修改錯(cuò)誤本身;留意修正一個(gè)錯(cuò)誤的同時(shí)有可能會引入新的錯(cuò)誤;修改錯(cuò)誤的過程將迫使人們短暫回到程序設(shè)計(jì)階段;修改源代碼程序,不要變更目的代碼。疑難解答:軟件測試及軟件調(diào)試有何不同?軟件測試是盡可能多地覺察軟件中的錯(cuò)誤,而軟件調(diào)試的任務(wù)是診斷和改正程序中的錯(cuò)誤。軟件測試貫穿整個(gè)軟件生命周期,調(diào)試主要在開發(fā)階段。第4章數(shù)據(jù)庫設(shè)計(jì)根底經(jīng)過對部分考生的調(diào)查以及對近真題的總結(jié)分析,筆試部分常??疾斓氖菙?shù)據(jù)庫管理系統(tǒng),數(shù)據(jù)庫根本特點(diǎn),數(shù)據(jù)庫系統(tǒng)的三級形式及二級映射,模型,關(guān)系模型和關(guān)系代數(shù),讀者應(yīng)對此部分進(jìn)展重點(diǎn)學(xué)習(xí)。具體重點(diǎn)學(xué)習(xí)學(xué)問點(diǎn):1.?dāng)?shù)據(jù)的概念、數(shù)據(jù)庫管理系統(tǒng)供應(yīng)的數(shù)據(jù)語言、數(shù)據(jù)管理員的主要工作、數(shù)據(jù)庫系統(tǒng)階段的特點(diǎn)、數(shù)據(jù)的物理獨(dú)立性及邏輯獨(dú)立性、數(shù)據(jù)統(tǒng)一管理及限制、三級形式及兩級映射的概念2.?dāng)?shù)據(jù)模型3個(gè)描繪內(nèi)容、模型的概念及其圖表示法、關(guān)系操縱、關(guān)系模型三類數(shù)據(jù)約束3.關(guān)系模型的根本操作、關(guān)系代數(shù)中的擴(kuò)大運(yùn)算4.?dāng)?shù)據(jù)庫設(shè)計(jì)生命周期法的4個(gè)階段數(shù)據(jù)庫系統(tǒng)的根本概念考點(diǎn)1數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)70%,數(shù)據(jù)是數(shù)據(jù)庫中存儲的根本對象,描繪事物的符號記錄。數(shù)據(jù)庫是長期儲存在計(jì)算機(jī)內(nèi)、有組織的、可共享的大量數(shù)據(jù)的集合,它具有統(tǒng)一的構(gòu)造形式并存放于統(tǒng)一的存儲介質(zhì)內(nèi),是多種應(yīng)用數(shù)據(jù)的集成,并可被各個(gè)應(yīng)用程序所共享。數(shù)據(jù)庫管理系統(tǒng)〔,〕是數(shù)據(jù)庫的機(jī)構(gòu),它是一種系統(tǒng)軟件,負(fù)責(zé)數(shù)據(jù)庫中的數(shù)據(jù)組織、數(shù)據(jù)操作、數(shù)據(jù)維護(hù)、限制及疼惜和數(shù)據(jù)效勞等。數(shù)據(jù)庫管理系統(tǒng)是數(shù)據(jù)系統(tǒng)的核心,主要有如下功能:數(shù)據(jù)形式定義、數(shù)據(jù)存取的物理構(gòu)建、數(shù)據(jù)操縱、數(shù)據(jù)的完好性、平安性定義和檢查、數(shù)據(jù)庫的并發(fā)限制及故障復(fù)原、數(shù)據(jù)的效勞。為完成數(shù)據(jù)庫管理系統(tǒng)的功能,數(shù)據(jù)庫管理系統(tǒng)供應(yīng)相應(yīng)的數(shù)據(jù)語言:數(shù)據(jù)定義語言、數(shù)據(jù)操縱語言、數(shù)據(jù)限制語言。數(shù)據(jù)庫管理員的主要工作如下:數(shù)據(jù)庫設(shè)計(jì)、數(shù)據(jù)庫維護(hù)、改善系統(tǒng)性能,進(jìn)步系統(tǒng)效率??键c(diǎn)2數(shù)據(jù)庫系統(tǒng)的開展30%,數(shù)據(jù)管理技術(shù)的開展閱歷了3個(gè)階段,見表4-1:表4-1各階段特點(diǎn)的具體說明考點(diǎn)3數(shù)據(jù)庫系統(tǒng)的根本特點(diǎn)30%,數(shù)據(jù)獨(dú)立性是數(shù)據(jù)及程序間的互不依靠性,即數(shù)據(jù)庫中的數(shù)據(jù)獨(dú)立于應(yīng)用程序而不依靠于應(yīng)用程序。數(shù)據(jù)的獨(dú)立性一般分為物理獨(dú)立性及邏輯獨(dú)立性兩種。〔1〕物理獨(dú)立性:指用戶的應(yīng)用程序及存儲在磁盤上的數(shù)據(jù)庫中數(shù)據(jù)是互相獨(dú)立的。當(dāng)數(shù)據(jù)的物理構(gòu)造〔包括存儲構(gòu)造、存取方式等〕變更時(shí),如存儲設(shè)備的更換、物理存儲的更換、存取方式變更等,應(yīng)用程序都不用變更?!?〕邏輯獨(dú)立性:指用戶的應(yīng)用程序及數(shù)據(jù)庫的邏輯構(gòu)造是互相獨(dú)立的。數(shù)據(jù)的邏輯構(gòu)造變更了,如修改數(shù)據(jù)形式、增加新的數(shù)據(jù)類型、變更數(shù)據(jù)間聯(lián)絡(luò)等,用戶程序都可以不變。數(shù)據(jù)統(tǒng)一管理及限制主要包括以下3個(gè)方面:數(shù)據(jù)的完好性檢查、數(shù)據(jù)的平安性疼惜和并發(fā)限制??键c(diǎn)4數(shù)據(jù)庫系統(tǒng)的內(nèi)部構(gòu)造體系30%,1.?dāng)?shù)據(jù)統(tǒng)系統(tǒng)的3級形式〔1〕概念形式,也稱邏輯形式,是對數(shù)據(jù)庫系統(tǒng)中全局?jǐn)?shù)據(jù)邏輯構(gòu)造的描繪,是全體用戶〔應(yīng)用〕公共數(shù)據(jù)視圖。一個(gè)數(shù)據(jù)庫只有一個(gè)概念形式?!?〕外形式,外形式也稱子形式,它是數(shù)據(jù)庫用戶可以看見和運(yùn)用的部分?jǐn)?shù)據(jù)的邏輯構(gòu)造和特征的描繪,它是由概念形式推導(dǎo)而出來的,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是及某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表示。一個(gè)概念形式可以有假設(shè)干個(gè)外形式?!?〕內(nèi)形式,內(nèi)形式又稱物理形式,它給出了數(shù)據(jù)庫物理存儲構(gòu)造及物理存取方法。內(nèi)形式處于最底層,它反映了數(shù)據(jù)在計(jì)算機(jī)物理構(gòu)造中的實(shí)際存儲形式,概念形式處于中間層,它反映了設(shè)計(jì)者的數(shù)據(jù)全局邏輯要求,而外形式處于最外層,它反映了用戶對數(shù)據(jù)的要求。小提示:內(nèi)形式處于最底層,它反映了數(shù)據(jù)在計(jì)算機(jī)物理構(gòu)造中的實(shí)際存儲形式,概念形式處于中間層,它反映了設(shè)計(jì)者的數(shù)據(jù)全局邏輯要求,而外形式處于最外層,它反映了用戶對數(shù)據(jù)的要求。2.?dāng)?shù)據(jù)庫系統(tǒng)的兩級映射兩級映射保證了數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的獨(dú)立性?!?〕概念形式到內(nèi)形式的映射。該映射給出了概念形式中數(shù)據(jù)的全局邏輯構(gòu)造到數(shù)據(jù)的物理存儲構(gòu)造間的對應(yīng)關(guān)系;〔2〕外形式到概念形式的映射。概念形式是一個(gè)全局形式而外形式是用戶的部分形式。一個(gè)概念形式中可以定義多個(gè)外形式,而每個(gè)外形式是概念形式的一個(gè)根本視圖。疑難解答:數(shù)據(jù)庫應(yīng)用系統(tǒng)的構(gòu)造是什么樣的?數(shù)據(jù)庫應(yīng)用系統(tǒng)的7個(gè)部分以確定的邏輯層次構(gòu)造方式組成一個(gè)有機(jī)的整體,它們的構(gòu)造關(guān)系是:應(yīng)用系統(tǒng)工、應(yīng)用開發(fā)工具軟件、數(shù)據(jù)庫管理系統(tǒng)、操作系統(tǒng)、硬件。數(shù)據(jù)模型考點(diǎn)5數(shù)據(jù)模型的根本概念70%,數(shù)據(jù)模型用來抽象、表示和處理現(xiàn)實(shí)世界中的數(shù)據(jù)和信息。分為兩個(gè)階段:把現(xiàn)實(shí)世界中的客觀對象抽象為概念模型;把概念模型轉(zhuǎn)換為某一支持的數(shù)據(jù)模型。數(shù)據(jù)模型所描繪的內(nèi)容有3個(gè)部分,它們是數(shù)據(jù)構(gòu)造、數(shù)據(jù)操作及數(shù)據(jù)約束??键c(diǎn)6模型30%,1.模型的根本概念〔1〕實(shí)體:現(xiàn)實(shí)世界中的事物可以抽象成為實(shí)體,實(shí)體是概念世界中的根本單位,它們是客觀存在的且又能互相區(qū)分的事物?!?〕屬性:現(xiàn)實(shí)世界中事物均有一些特性,這些特性可以用屬性來表示?!?〕碼:唯一標(biāo)識實(shí)體的屬性集稱為碼?!?〕域:屬性的取值范圍稱為該屬性的域。〔5〕聯(lián)絡(luò):在現(xiàn)實(shí)世界中事物間的關(guān)聯(lián)稱為聯(lián)絡(luò)。兩個(gè)實(shí)體集間的聯(lián)絡(luò)事實(shí)上是實(shí)體集間的函數(shù)關(guān)系,這種函數(shù)關(guān)系可以有下面幾種:一對一的聯(lián)絡(luò)、一對多或多對一聯(lián)絡(luò)、多對多。2.模型的圖示法模型用圖來表示?!?〕實(shí)體表示法:在圖中用矩形表示實(shí)體集,在矩形內(nèi)寫上該實(shí)體集的名字?!?〕屬性表示法:在圖中用橢圓形表示屬性,在橢圓形內(nèi)寫上該屬性的名稱?!?〕聯(lián)絡(luò)表示法:在圖中用菱形表示聯(lián)絡(luò),菱形內(nèi)寫上聯(lián)絡(luò)名??键c(diǎn)7層次模型30%,滿意下面兩個(gè)條件的根本層次聯(lián)絡(luò)的集合為層次模型?!?〕有且只有一個(gè)結(jié)點(diǎn)沒有雙親結(jié)點(diǎn),這個(gè)結(jié)點(diǎn)稱為根結(jié)點(diǎn);〔2〕除根結(jié)點(diǎn)以外的其他結(jié)點(diǎn)有且僅有一個(gè)雙親結(jié)點(diǎn)??键c(diǎn)8關(guān)系模型70%,當(dāng)對關(guān)系模型進(jìn)展查詢運(yùn)算,涉及到多種運(yùn)算時(shí),應(yīng)當(dāng)留意它們之間的先后依次,因?yàn)橛锌赡苓M(jìn)展投影運(yùn)算時(shí),把符合條件的記錄過濾,產(chǎn)生錯(cuò)誤的結(jié)果。關(guān)系模型承受二維表來表示,二維表一般滿意下面7特性質(zhì):〔1〕二維表中元組個(gè)數(shù)是有限的元組個(gè)數(shù)有限性;〔2〕二維表中元組均不一樣元組的唯一性;〔3〕二維表中元組的次序可以隨意交換元組的次序無關(guān)性;〔4〕二維表中元組的重量是不行分割的根本數(shù)據(jù)項(xiàng)元組重量的原子性;〔5〕二維表中屬性名各不一樣屬性名唯一性;〔6〕二維表中屬性

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論