計算機二級C語言考試公共基礎(chǔ)知識部分考試內(nèi)容:
一、基本數(shù)據(jù)結(jié)構(gòu)與算法
1. 算法的基本概念;算法復(fù)雜度的概念和意義(時間復(fù)雜度與空間復(fù)雜度)。
2. 數(shù)據(jù)結(jié)構(gòu)的定義;數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲結(jié)構(gòu);數(shù)據(jù)結(jié)構(gòu)的圖形表示;線性結(jié)構(gòu)與非線性結(jié)構(gòu)的概念。
3. 線性表的定義;線性表的順序存儲結(jié)構(gòu)及其插入與刪除運算。
4. 棧和隊列的定義;棧和隊列的順序存儲結(jié)構(gòu)及其基本運算。
5. 線性單鏈表、雙向鏈表與循環(huán)鏈表的結(jié)構(gòu)及其基本運算。
6. 樹的基本概念;二叉樹的定義及其存儲結(jié)構(gòu);二叉樹的前序、中序和后序遍歷。
7. 順序查找與二分法查找算法;基本排序算法(交換類排序,選擇類排序,插入類排序)。
二、程序設(shè)計基礎(chǔ)
1. 程序設(shè)計方法與風(fēng)格。
2. 結(jié)構(gòu)化程序設(shè)計。
3. 面向?qū)ο蟮某绦蛟O(shè)計方法,對象,方法,屬性及繼承與多態(tài)性。
三、軟件工程基礎(chǔ)
1. 軟件工程基本概念,軟件生命周戎概念,軟件工具與軟件開發(fā)環(huán)境。
2. 結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖,數(shù)據(jù)字典,軟件需求規(guī)格說明書。
3. 結(jié)構(gòu)化設(shè)計方法,總體設(shè)計與詳細(xì)設(shè)計。
4. 軟件測試的方法,白盒測試與黑盒測試,測試用例設(shè)計,軟件測試的實施,單元測試、集成測試和系統(tǒng)測試。
5. 程序的調(diào)試,靜態(tài)調(diào)試與動態(tài)調(diào)試。
四、數(shù)據(jù)庫設(shè)計基礎(chǔ)
1. 數(shù)據(jù)庫的基本概念:數(shù)據(jù)庫,數(shù)據(jù)庫管理系統(tǒng),數(shù)據(jù)庫系統(tǒng)。
2. 數(shù)據(jù)模型,實體聯(lián)系模型及E-R圖,從E-R圖導(dǎo)出關(guān)系數(shù)據(jù)模型。
3. 關(guān)系代數(shù)運算,包括集合運算及選擇、投影、連接運算,數(shù)據(jù)庫規(guī)范化理論。
4. 數(shù)據(jù)庫設(shè)計方法和步驟:需求分析、概念設(shè)計、邏輯設(shè)計和物理設(shè)計的相關(guān)策略。
編程70分,公共基礎(chǔ)30分。
如果說重點,那么 順序,選擇,循環(huán)是編程的重點;而公共基礎(chǔ)考的就是書上的common sense,那些都是數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)東西。
沒什么啦,二級你好好看看書就好了,很簡單的東西。
不建議看視頻浪費你的時間,吧時間放在動手上。
建議數(shù)目:《C語言程序設(shè)計》清華大學(xué)出版社
《公共基礎(chǔ)知識》高教版
《模擬題(筆試)》FUTURE
《模擬題(上機)》FUTURE 100套練習(xí)題——這一百套做會就沒問題了。
去百度文庫,查看完整內(nèi)容>
內(nèi)容來自用戶:zhujie_0811
c語言入門經(jīng)典必背18個程序.txtc語言入門經(jīng)典必背18個程序
1、/*輸出9*9口訣。共9行9列,i控制行,j控制列。*/#include"stdio.h"main(){inti,j,result;for(i=1;i<10;i++){for(j=1;j<10;j++){result=i*j;printf("%d*%d=%-3d",i,j,result);/*-3d表示左對齊,占3位*/printf("\n");/*每一行后換行*/
2、/*古典問題:有一對兔子,從出生后第3個月起每個月都生一對兔子,小兔子長到第三個月后每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數(shù)為多少?兔子的規(guī)律為數(shù)列1,1,2,3,5,8,13,21。.*/main(){longf1,f2;inti;f1=f2=1;for(i=1;i<=20;i++){printf("%12ld%12ld",f1,f2);if(i%2==0)printf("\n");/*控制輸出,每行四個*/f1=f1+f2;/*前兩個月加起來賦值給第三個月*/f2=f1+f2;/*前兩個月加起來賦值給第三個月*/
3、/*判斷101-200之間有多少個素數(shù),并輸出所有素數(shù)及素數(shù)的個數(shù)。程序分析:判斷素數(shù)的方法:用一個數(shù)分別去除2到sqrt(這個數(shù)),如果能被整除,則表明此數(shù)不是素數(shù),反之是素數(shù)。*/#include"math.h"main(){intm,i,k,h=0,leap=1;printf("\n");for(m=101;m<=200;m++){k=sqrt(m+1);for(i=2;i<=k;i++)if(m%i==0){leap=0;break;if(leap)/*內(nèi)循環(huán)結(jié)束后,leap依然為1,則m是素數(shù)*/{printf("%-4d",m);h++;if(h%10==0)printf("\n");leap=1;printf("\nThe
1、程語語言其實是一個很初級的工具,但是又必須熟練的掌握它,學(xué)懂一門編程語言就好像學(xué)會了寫字,但是會寫字的人不見得會寫文章,而會寫文章又不見的寫得好。
可是如果不會寫字,那就一定寫不出文章來。2、在學(xué)習(xí)C語言之前,應(yīng)該學(xué)好計算機基礎(chǔ)。
里面的很多概念對于C程序員都是非常重要的。如果在著手學(xué)習(xí)C之前,或者已經(jīng)開始學(xué)習(xí)C,但是碰到了很多問題,應(yīng)該再把計算機基礎(chǔ)的書拿來好好看看。
如果有足夠的耐心,十足的毅力,應(yīng)該再學(xué)習(xí)C語言之前學(xué)學(xué)匯編,這會對許多比較細(xì)膩的概念有清醒的認(rèn)識。那么可以在看完一遍C語言的教材后再看,但是一定要看一遍,一定會受益匪淺。
不管看什么書,先認(rèn)真地看懂,不要貪速度,應(yīng)該力求深入的理解。如果能夠比較熟練的解決一本教材上的所有習(xí)題,那么就應(yīng)該轉(zhuǎn)入對算法的學(xué)習(xí),盡管此時的C語言還稱不上精通,有許多細(xì)節(jié)問題還不了解,許多問題還沒有碰到,但是這些問題會在后面的工作和學(xué)習(xí)中得到解決的。
3、不需要多少資料,掌握一本《The C Programming Language》就足夠了。繼續(xù)學(xué)習(xí)就更加容易。
建議不要找捷徑,通過考試除外,真正的水平提高是建立在編程實踐積累基礎(chǔ)上的,必須一個一個程序的完成才能提高。
二級公共基礎(chǔ)知識總結(jié)第一章 數(shù)據(jù)結(jié)構(gòu)與算法1.1 算法算法:是指解題方案的準(zhǔn)確而完整的描述。
算法不等于程序,也不等計算機方法,程序的編制不可能優(yōu)于算法的設(shè)計。算法的基本特征:是一組嚴(yán)謹(jǐn)?shù)囟x運算順序的規(guī)則,每一個規(guī)則都是有效的,是明確的,此順序?qū)⒃谟邢薜拇螖?shù)下終止。
特征包括:(1)可行性;(2)確定性,算法中每一步驟都必須有明確定義,不充許有模棱兩可的解釋,不允許有多義性;(3)有窮性,算法必須能在有限的時間內(nèi)做完,即能在執(zhí)行有限個步驟后終止,包括合理的執(zhí)行時間的含義;(4)擁有足夠的情報。算法的基本要素:一是對數(shù)據(jù)對象的運算和操作;二是算法的控制結(jié)構(gòu)。
指令系統(tǒng):一個計算機系統(tǒng)能執(zhí)行的所有指令的集合。基本運算包括:算術(shù)運算、邏輯運算、關(guān)系運算、數(shù)據(jù)傳輸。
算法的控制結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。算法基本設(shè)計方法:列舉法、歸納法、遞推、遞歸、減斗遞推技術(shù)、回溯法。
算法復(fù)雜度:算法時間復(fù)雜度和算法空間復(fù)雜度。算法時間復(fù)雜度是指執(zhí)行算法所需要的計算工作量。
算法空間復(fù)雜度是指執(zhí)行這個算法所需要的內(nèi)存空間。1.2 數(shù)據(jù)結(jié)構(gòu)的基本基本概念數(shù)據(jù)結(jié)構(gòu)研究的三個方面:(1)數(shù)據(jù)集合中各數(shù)據(jù)元素之間所固有的邏輯關(guān)系,即數(shù)據(jù)的邏輯結(jié)構(gòu);(2)在對數(shù)據(jù)進(jìn)行處理時,各數(shù)據(jù)元素在計算機中的存儲關(guān)系,即數(shù)據(jù)的存儲結(jié)構(gòu);(3)對各種數(shù)據(jù)結(jié)構(gòu)進(jìn)行的運算。
數(shù)據(jù)結(jié)構(gòu)是指相互有關(guān)聯(lián)的數(shù)據(jù)元素的集合。數(shù)據(jù)的邏輯結(jié)構(gòu)包含:(1)表示數(shù)據(jù)元素的信息;(2)表示各數(shù)據(jù)元素之間的前后件關(guān)系。
數(shù)據(jù)的存儲結(jié)構(gòu)有順序、鏈接、索引等。線性結(jié)構(gòu)條件:(1)有且只有一個根結(jié)點;(2)每一個結(jié)點最多有一個前件,也最多有一個后件。
非線性結(jié)構(gòu):不滿足線性結(jié)構(gòu)條件的數(shù)據(jù)結(jié)構(gòu)。1.3 線性表及其順序存儲結(jié)構(gòu)線性表是由一組數(shù)據(jù)元素構(gòu)成,數(shù)據(jù)元素的位置只取決于自己的序號,元素之間的相對位置是線性的。
在復(fù)雜線性表中,由若干項數(shù)據(jù)元素組成的數(shù)據(jù)元素稱為記錄,而由多個記錄構(gòu)成的線性表又稱為文件。非空線性表的結(jié)構(gòu)特征:(1)且只有一個根結(jié)點a1,它無前件;(2)有且只有一個終端結(jié)點an,它無后件;(3)除根結(jié)點與終端結(jié)點外,其他所有結(jié)點有且只有一個前件,也有且只有一個后件。
結(jié)點個數(shù)n稱為線性表的長度,當(dāng)n=0時,稱為空表。線性表的順序存儲結(jié)構(gòu)具有以下兩個基本特點:(1)線性表中所有元素的所占的存儲空間是連續(xù)的;(2)線性表中各數(shù)據(jù)元素在存儲空間中是按邏輯順序依次存放的。
ai的存儲地址為:ADR(ai)=ADR(a1)+(i-1)k,,ADR(a1)為第一個元素的地址,k代表每個元素占的字節(jié)數(shù)。順序表的運算:插入、刪除。
1.4 棧和隊列棧是限定在一端進(jìn)行插入與刪除的線性表,允許插入與刪除的一端稱為棧頂,不允許插入與刪除的另一端稱為棧底。棧按照“先進(jìn)后出”(FILO)或“后進(jìn)先出”(LIFO)組織數(shù)據(jù),棧具有記憶作用。
用top表示棧頂位置,用bottom表示棧底。棧的基本運算:(1)插入元素稱為入棧運算;(2)刪除元素稱為退棧運算;(3)讀棧頂元素是將棧頂元素賦給一個指定的變量,此時指針無變化。
隊列是指允許在一端(隊尾)進(jìn)入插入,而在另一端(隊頭)進(jìn)行刪除的線性表。Rear指針指向隊尾,front指針指向隊頭。
隊列是“先進(jìn)行出”(FIFO)或“后進(jìn)后出”(LILO)的線性表。隊列運算包括(1)入隊運算:從隊尾插入一個元素;(2)退隊運算:從隊頭刪除一個元素。
循環(huán)隊列:s=0表示隊列空,s=1且front=rear表示隊列滿1.5 線性鏈表數(shù)據(jù)結(jié)構(gòu)中的每一個結(jié)點對應(yīng)于一個存儲單元,這種存儲單元稱為存儲結(jié)點,簡稱結(jié)點。結(jié)點由兩部分組成:(1)用于存儲數(shù)據(jù)元素值,稱為數(shù)據(jù)域;(2)用于存放指針,稱為指針域,用于指向前一個或后一個結(jié)點。
在鏈?zhǔn)酱鎯Y(jié)構(gòu)中,存儲數(shù)據(jù)結(jié)構(gòu)的存儲空間可以不連續(xù),各數(shù)據(jù)結(jié)點的存儲順序與數(shù)據(jù)元素之間的邏輯關(guān)系可以不一致,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來確定的。鏈?zhǔn)酱鎯Ψ绞郊纯捎糜诒硎揪€性結(jié)構(gòu),也可用于表示非線性結(jié)構(gòu)。
線性鏈表,HEAD稱為頭指針,HEAD=NULL(或0)稱為空表,如果是兩指針:左指針(Llink)指向前件結(jié)點,右指針(Rlink)指向后件結(jié)點。線性鏈表的基本運算:查找、插入、刪除。
1.6 樹與二叉樹樹是一種簡單的非線性結(jié)構(gòu),所有元素之間具有明顯的層次特性。在樹結(jié)構(gòu)中,每一個結(jié)點只有一個前件,稱為父結(jié)點,沒有前件的結(jié)點只有一個,稱為樹的根結(jié)點,簡稱樹的根。
每一個結(jié)點可以有多個后件,稱為該結(jié)點的子結(jié)點。沒有后件的結(jié)點稱為葉子結(jié)點。
在樹結(jié)構(gòu)中,一個結(jié)點所擁有的后件的個數(shù)稱為該結(jié)點的度,所有結(jié)點中最大的度稱為樹的度。樹的最大層次稱為樹的深度。
二叉樹的特點:(1)非空二叉樹只有一個根結(jié)點;(2)每一個結(jié)點最多有兩棵子樹,且分別稱為該結(jié)點的左子樹與右子樹。二叉樹的基本性質(zhì):(1)在二叉樹的第k層上,最多有2k-1(k≥1)個結(jié)點;(2)深度為m的二叉樹最多有2m-1個結(jié)點;(3)度為0的結(jié)點(即葉子結(jié)點)總是比度為2的結(jié)點多一個;(4)具有n個結(jié)點的二叉樹,其深度至少為[log2n]+1。
聲明:本網(wǎng)站尊重并保護(hù)知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請在一個月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時間:3.567秒