江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)歷年考研真題匯編_第1頁
江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)歷年考研真題匯編_第2頁
江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)歷年考研真題匯編_第3頁
江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)歷年考研真題匯編_第4頁
江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)歷年考研真題匯編_第5頁
已閱讀5頁,還剩22頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

目錄

2014年江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)A考研真題

2014年江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)B考研真題

2013年江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)A考研真題

2013年江西師范大學(xué)軟件學(xué)院869C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)B考研真題

2012年江西師范大學(xué)軟件學(xué)院837C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)考研真題

2014年江西師范大學(xué)軟件學(xué)院869C語言程

序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)A考研真題

專業(yè):120100管理科學(xué)與工程01、04方向

科目:C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)

注:考生答題時(shí),請寫在考點(diǎn)下發(fā)的答題紙上,寫在本試題紙或其

他答題紙上的一律無效。

一、簡答題(共8小題,其中第7小題8分,其余每小題6分,共50

分)

1.請至少列舉三種以上C語言的主要數(shù)據(jù)類型。

2.簡述C語言中條件表達(dá)式max=(a>b)?a:b的執(zhí)行過程。

3.簡述C語言中break語句的作用。

4.請給出指針變量定義的一般形式,并舉例說明。

5.若線性表的元素個(gè)數(shù)基本穩(wěn)定,且很少進(jìn)行插入和刪除操作,

但要求以最快速度存取表中的元素時(shí),應(yīng)采用何種存儲(chǔ)結(jié)構(gòu)?若在應(yīng)用

中經(jīng)常增、刪元素,則應(yīng)采用何種存儲(chǔ)結(jié)構(gòu)?

6.對于一個(gè)棧,若輸入序列為{A,B,C},試寫出至少三種可能的輸

出序列。

7.假設(shè)雙鏈表結(jié)構(gòu)的C語言描述如下:

typedefintdatatype;

typedefstructdlink_node{

datatypeinfo;

structdlink_node*llink,*rlink;

}dnode;

8.根據(jù)圖1回答以下問題:

(1)如何訪問q指針?biāo)附Y(jié)點(diǎn)的數(shù)據(jù)域?

(2)如何訪問q指針?biāo)附Y(jié)點(diǎn)的直接前驅(qū)結(jié)點(diǎn)的數(shù)據(jù)域?

圖1

9.什么叫滿二叉樹?

二、填空題(5個(gè)空,每空2分,共10分)

1.若有語句inta=2;則計(jì)算表達(dá)式a+=a后,a的值為_______。

2.若有說明和語句:inta=2,b;b=a++;則a和b的值分別是

________、________。

3.若已定義intx=3,y=2,則表達(dá)式x&&y的值為_________。

4.設(shè)有語句inta[10];則共定義了_______個(gè)數(shù)組元素。

三、判斷題,對打“√”,錯(cuò)打“X”(5小題,每小題2分,共10分)

1.棧是一種可在兩端進(jìn)行插入或刪除操作的線性表。

2.隊(duì)列的存儲(chǔ)方式只能是順序存儲(chǔ),不能用鏈?zhǔn)酱鎯?chǔ)。

3.如果兩個(gè)字符串的長度相同,則它們相等。

4.完全二叉樹的某結(jié)點(diǎn)若無左孩子,則它必是葉子節(jié)點(diǎn)。

5.一棵有n個(gè)頂點(diǎn)的生成樹有且僅有n-1條邊。

四、應(yīng)用題(3小題,每小題10分,共30分)

1.對于圖2所示的二叉樹,請回答以下問題:

圖2

(1)結(jié)點(diǎn)C的雙親為哪個(gè)結(jié)點(diǎn)?

(2)結(jié)點(diǎn)F的層次為多少?二叉樹的高度(深度)為多少?

(3)寫出這棵二叉樹的前序遍歷序列。

2.設(shè)哈希表長度為11,使用哈希函數(shù)H(x)=x%11把一個(gè)整數(shù)值轉(zhuǎn)

換成哈希表的下標(biāo),現(xiàn)給定一組關(guān)鍵字序列為1,24,12,34,38,

36,25,33的數(shù)據(jù),試畫出采用線性探測法解決沖突時(shí)所構(gòu)造的哈希

表。

3.對于圖3所示的無向圖G,試給出:

圖3

(1)圖中每個(gè)頂點(diǎn)的度。

(2)該無向圖的鄰接矩陣。

五、程序設(shè)計(jì)題(5小題,每小題10分,共50分)

1.試編寫一個(gè)C語言程序,判斷從鍵盤輸入的一個(gè)整數(shù)能否被2和3

整除。若能滿足上述條件,則將其輸出,否則輸出不能同時(shí)被2和3整除

的提示信息。

2.試編寫一個(gè)C語言程序,從鍵盤為一個(gè)長度為10的整型一維數(shù)組

輸入數(shù)據(jù),并輸出數(shù)組中值最大的元素的下標(biāo)值。

3.試編寫一個(gè)C語言程序,先定義一個(gè)整數(shù)類型的數(shù)組a[5][5],然

后給數(shù)組a賦值,最后計(jì)算并輸出a數(shù)組中每行的和。

4.設(shè)有一個(gè)線性表(a1,a2,a3,…,an),其元素遞增有序且按順序

存儲(chǔ)于計(jì)算機(jī)內(nèi)。要求設(shè)計(jì)一個(gè)算法voidsearch(sequence_listsl,intx)在

線性表中查找數(shù)值為x的元素(查找算法不限),若找到將其值與第一

個(gè)元素的值進(jìn)行交換,否則輸出此元素不存在。

假定程序中已有用C語言描述的順序表結(jié)構(gòu)如下:

#defineMAXSIZE100/*預(yù)定義最大的數(shù)據(jù)域空間*/

typedefintdatatype;/*假設(shè)數(shù)據(jù)類型為整型*/

typedefstruct{

datatypea[MAXSIZE];/*此處假設(shè)數(shù)據(jù)元素只包含一個(gè)整型的關(guān)

鍵字域*/

intsize;/*線性表長度*/

}sequence_list;/*預(yù)定義的順序表類型*/

5.試編寫一個(gè)算法node*insert(node*headA,node*headB,datatype

x),實(shí)現(xiàn)把帶頭結(jié)點(diǎn)的headB單鏈表中值為x的所有結(jié)點(diǎn)依次插入到帶頭

結(jié)點(diǎn)的headA單鏈表尾部。假定程序中已有如下說明:

typedefintdatatype;

typedefstructlink_node{

datatypeinfo;

structlink_node*next;

}node;

2014年江西師范大學(xué)軟件學(xué)院869C語言程

序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)B考研真題

專業(yè):120100管理科學(xué)與工程01、04方向

科目:C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)

注:考生答題時(shí),請寫在考點(diǎn)下發(fā)的答題紙上,寫在本試題紙或其

他答題紙上的一律無效。

一、簡答題(共8小題,其中第7小題8分,其余每小題6分,共50

分)

1.在C語言中,結(jié)構(gòu)化程序設(shè)計(jì)有哪三種基本控制結(jié)構(gòu)?

2.簡述以下if語句的執(zhí)行過程。

if(表達(dá)式1)語句1;

elseif(表達(dá)式2)語句2;

3.簡述C語言中break語句的作用。

4.請給出指針變量定義的一般形式,并舉例說明。

5.常用的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)分為哪幾種?

6.對于一個(gè)隊(duì)列,若輸入序列為{a,b,d,e,f},試寫出其對應(yīng)的輸出

序列。

7.假設(shè)雙鏈表結(jié)構(gòu)的C語言描述如下:

typedefintdatatype;

typedefstructdlink_node{

datatypeinfo;

structdlink_node*llink,*rlink;

}dnode;

8.根據(jù)圖1回答以下問題:

(1)如何訪問q指針?biāo)附Y(jié)點(diǎn)的數(shù)據(jù)域?

(2)如何訪問q指針?biāo)附Y(jié)點(diǎn)的直接后繼結(jié)點(diǎn)的數(shù)據(jù)域?

圖1

9.什么叫二叉樹?

二、填空題(5個(gè)空,每空2分,共10分)

1.在C語言中,實(shí)型變量的類型說明符有:__________、double。

2.若已定義inta=1,b=2,c=3,則表達(dá)式a||b&&c的值為_________。

3.若有5<=x<=10,則其正確的C語言表達(dá)式是_________。

4.執(zhí)行下面程序段后,a的值為_________。

inta=4,b=6;

a=a+b;

5.下面程序運(yùn)行后,輸出的結(jié)果是___________。

#include<stdio.h>

voidmain()

{intx=10,y=3;

printf(“%d\n”,y=x%y);

}

三、判斷題,對打“√”,錯(cuò)打“X”(5小題,每小題2分,共10分)

1.棧的存儲(chǔ)方式既可以是順序存儲(chǔ),也可以是鏈?zhǔn)酱鎯?chǔ)。

2.隊(duì)列是一種特殊的線性表,具有先進(jìn)先出的性質(zhì)。

3.如果一個(gè)串中的所有字符均在另一個(gè)串中出現(xiàn),則前者是后者

的子串。

4.使用二分法檢索時(shí)要求線性表有序并且采用順序存儲(chǔ)結(jié)構(gòu)。

5.線性表若采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)時(shí),要求內(nèi)存中可用存儲(chǔ)單元的地

址必須是連續(xù)的。

四、應(yīng)用題(3小題,每小題10分,共30分)

1.對于圖2所示的二叉樹,請回答以下問題:

圖2

(1)二叉樹的高度(深度)為多少?

(2)該二叉樹是否是滿二叉樹?是否是完全二叉樹?

(3)寫出這棵二叉樹的前序遍歷序列。

2.假設(shè)用于通信的電文由6個(gè)字母A,B,C,D,E和F組成,各字母在電

文中出現(xiàn)的相對頻率分別為0.3,0.07,0.1,0.18,0.2和0.06,請根據(jù)字

符出現(xiàn)頻率構(gòu)造對應(yīng)的Huffman樹,并為它們設(shè)計(jì)Huffman編碼。

3.對于圖3所示的無向圖G,試給出:

圖3

(1)該無向圖從頂點(diǎn)A開始的深度優(yōu)先(DFS)遍歷結(jié)果。

(2)該無向圖從頂點(diǎn)A開始的廣度優(yōu)先(BFS)遍歷結(jié)果。

五、程序設(shè)計(jì)題(5小題,每小題10分,共50分)

1.有一函數(shù):y=

試編寫一個(gè)C語言程序,從鍵盤上輸入x的值,根據(jù)上面的函數(shù),求

出y的值,并輸出。

2.假如某數(shù)列第1,2項(xiàng)分別為0和1,以后每個(gè)奇數(shù)編號(hào)的項(xiàng)是前

兩項(xiàng)之和,偶數(shù)編號(hào)的項(xiàng)是前兩項(xiàng)之積,生成并打印該數(shù)列的前15項(xiàng),

生成的15個(gè)數(shù)存放在一維數(shù)組x中,并按每行5項(xiàng)的形式輸出。

3.試編寫一個(gè)C語言程序,先從鍵盤為一個(gè)整型二維數(shù)組a[10][10]

賦值,然后計(jì)算并輸出a數(shù)組中各元素的最大值。

4.試編寫一個(gè)算法intcount_x(sequence_listsl,intx),計(jì)算并返回

順序表中值為x的結(jié)點(diǎn)的個(gè)數(shù)。

假定程序中已有用C語言描述的順序表結(jié)構(gòu)如下:

#defineMAXSIZE100/*預(yù)定義最大的數(shù)據(jù)域空間*/

typedefintdatatype;/*假設(shè)數(shù)據(jù)類型為整型*/

typedefstruct{

datatypea[MAXSIZE];/*此處假設(shè)數(shù)據(jù)元素只包含一個(gè)整型的關(guān)

鍵字域*/

intsize;/*線性表長度*/

}sequence_list;/*預(yù)定義的順序表類型*/

5.試編寫一個(gè)算法node*insert(node*headA,node*headB),實(shí)現(xiàn)把

帶頭結(jié)點(diǎn)的headB單鏈表中值為偶數(shù)的所有結(jié)點(diǎn)依次插入到帶頭結(jié)點(diǎn)的

headA單鏈表尾部。假定程序中已有如下說明:

typedefintdatatype;

typedefstructlink_node{

datatypeinfo;

structlink_node*next;

}node;

2013年江西師范大學(xué)軟件學(xué)院869C語言程

序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)A考研真題

專業(yè):120100管理科學(xué)與工程01、04方向

科目:C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)

注:考生答題時(shí),請寫在考點(diǎn)下發(fā)的答題紙上,寫在本試題紙或其

他答題紙上的一律無效。

一、簡答題(共8小題,其中第5小題8分,其余每小題6分,共50

分)

1.簡述C語言中有哪些算術(shù)運(yùn)算符。

2.簡述C語言中,輸出操作有哪些常用函數(shù)?

3.簡述以下switch語句的執(zhí)行過程。

switch(表達(dá)式)

{

case常量1:語句1;

case常量2:語句2;

case常量3:語句3;

.......

case常量n:語句n;

default:語句n+1;

}

4.簡述C語言中while循環(huán)和do-while循環(huán)的異同。

5.什么叫串(字符串)?空串和空格串是否相同,為什么?

6.抽象數(shù)據(jù)類型堆棧的常用操作有哪些(至少寫出三個(gè))?

7.在順序隊(duì)列中,什么叫假溢出?

8.簡述二叉樹和一般樹的主要區(qū)別。

二、填空題(5個(gè)空,每空2分,共10分)

1.在C語言中,正確的標(biāo)識(shí)符是由字母、________、下劃線組成

的,其中第一個(gè)字符應(yīng)為字母或下劃線。

2.若已定義intx=6,y=3,則計(jì)算表達(dá)式x-=y后的x值是_________。

3.若有10<x<100,則其正確的C語言表達(dá)式是_________。

4.設(shè)有語句inta[3][4];則共定義了_______個(gè)數(shù)組元素。

5.設(shè)有以下宏定義:

#defineM3

則執(zhí)行語句z=2*M+5;后,z的值是_________。

三、判斷題,對打“√”,錯(cuò)打“X”(5小題,每小題2分,共10分)

1.棧是一種特殊的線性表,具有先進(jìn)后出的性質(zhì)。

2.隊(duì)列的存儲(chǔ)方式既可是順序存儲(chǔ),也可是鏈?zhǔn)酱鎯?chǔ)。

3.對稀疏矩陣進(jìn)行壓縮存儲(chǔ)是為了節(jié)省存儲(chǔ)空間。

4.在一棵二叉樹中,假定每個(gè)結(jié)點(diǎn)只有左子女,沒有右子女,對

它分別進(jìn)行前序遍歷和中序遍歷,則具有相同的遍歷結(jié)果。

5.樹型結(jié)構(gòu)是一種線性數(shù)據(jù)結(jié)構(gòu)。

四、應(yīng)用題(3小題,每小題10分,共30分)

1.對于圖1所示的二叉樹:

圖1

寫出這棵二叉樹的前序、中序和后序遍歷序列。

2.設(shè)哈希表長度為11,哈希函數(shù)H(x)=x%11,給定的關(guān)鍵字序列

為1,13,12,34,38,33,27,29。試畫出線性探測法解決沖突時(shí)所

構(gòu)造的哈希表。

3.已知無向圖G=(V,E),其中V表示頂點(diǎn)集合,E表示邊集合,且

V={a,b,c,d,e},E={<a,b>,<a,c>,<c,d>,<c,e>,<d,e>,<b,d>},請畫出

無向圖G,并寫出該無向圖G的鄰接矩陣。

五、程序設(shè)計(jì)題(5小題,每小題10分,共50分)

1.從鍵盤上輸入10個(gè)評委的分?jǐn)?shù),去掉其中一個(gè)最高分和一個(gè)最

低分,求出其余8個(gè)人的平均分,最后輸出最高分,最低分和平均分。

試編寫一個(gè)C語言程序?qū)崿F(xiàn)以上功能。

2.試編寫一個(gè)C語言程序,求一分?jǐn)?shù)序列的前15項(xiàng)之

和。

3.試編寫一個(gè)C函數(shù)voidinverted(ints[],intn),實(shí)現(xiàn)將數(shù)組s中的n

個(gè)值按逆序重新存放。例如,原來存放的順序?yàn)?,3,8,6,11,逆序存放后

為11,6,8,3,1。

4.試編寫一個(gè)算法node*dele(node*head,datatypex),實(shí)現(xiàn)在帶頭

結(jié)點(diǎn)的head單鏈表中刪除值為x的結(jié)點(diǎn)。假定程序中已有如下說明:

tpedefintdatatype;

typedefstructlink_node

{datatypedata;

structlink_nodenext;

}node;

5.試編寫一個(gè)算法intbinsearch(seqlistL,datatypekey),實(shí)現(xiàn)用非遞

歸的二分查找法在順序表L中查找是否存在關(guān)鍵字為key的數(shù)據(jù)元素,若

查找成功則返回所在位置,否則返回-1。假定程序中已有說明如下:

#definemaxsize100/*預(yù)定義最大的數(shù)據(jù)域空間*/

typedefintdatatype;/*假設(shè)數(shù)據(jù)類型為整型*/

typedefstruct{

datatypedata[maxsize];/*此處假設(shè)數(shù)據(jù)元素只包含一個(gè)整型的關(guān)

鍵字域*/

intlen;/*線性表長度*/

}seqlist;/*預(yù)定義的順序表類型*/

2013年江西師范大學(xué)軟件學(xué)院869C語言程

序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)B考研真題

專業(yè):120100管理科學(xué)與工程01、04方向

科目:C語言程序設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)

注:考生答題時(shí),請寫在考點(diǎn)下發(fā)的答題紙上,寫在本試題紙或其

他答題紙上的一律無效。

一、簡答題(共8小題,其中第8小題8分,其余每小題6分,共50

分)

1.簡述C語言中有哪些關(guān)系運(yùn)算符。

2.C語言中,輸入操作有哪些常用函數(shù)?

3.簡述以下if語句的執(zhí)行過程。

if(表達(dá)式1)語句1;

elseif(表達(dá)式2)語句2;

else語句3;

4.簡述在C語言的循環(huán)語言中break語句與continue語句的區(qū)別。

5.抽象數(shù)據(jù)類型隊(duì)列的常用操作有哪些(至少寫出三個(gè))?

6.二叉樹的常見遍歷方法有哪些?

7.什么叫函數(shù)的遞歸調(diào)用?

8.試分別列舉出一個(gè)滿二叉樹和一個(gè)完全二叉樹的例子。

二、填空題(5個(gè)空,每空2分,共10分)

1.C語言程序的三種基本結(jié)構(gòu)是順序結(jié)構(gòu)、選擇結(jié)構(gòu)和_________結(jié)

構(gòu)。

2.若已定義intx=4,y=2,z=3,則表達(dá)式x-y||z的值為_________。

3.設(shè)有語句inta[50];則數(shù)組a的元素個(gè)數(shù)為_________。

4.若有說明和語句:inta=5,b=6,y=6;b-=a;y=a++;則b和y的

值分別是________、________。

三、判斷題,對打“√”,錯(cuò)打“X”(5小題,每小題2分,共10分)

1.線性表中除了第一個(gè)節(jié)點(diǎn)和最后一個(gè)節(jié)點(diǎn)外,其余的結(jié)點(diǎn)有且

僅有一個(gè)前驅(qū)結(jié)點(diǎn)和一個(gè)后繼結(jié)點(diǎn)。

2.兩個(gè)棧共享一片連續(xù)內(nèi)存空間時(shí),為提高內(nèi)存利用率,減少溢

出機(jī)會(huì),應(yīng)把兩個(gè)棧的棧底分別設(shè)在這片內(nèi)存空間的兩端。

3.隊(duì)列是一種特殊的線性表,其特殊性在于插入和刪除操作都在

表的同一端執(zhí)行。

4.二叉樹中任一個(gè)結(jié)點(diǎn)的度均為2。

5.哈夫曼樹是帶權(quán)路徑長度最短的樹,路徑上權(quán)值較大的結(jié)點(diǎn)離

根節(jié)點(diǎn)較近。

四、應(yīng)用題(3小題,每小題10分,共30分)

1.試分別畫出具有3個(gè)結(jié)點(diǎn)的二叉樹的五種不同形態(tài)。

2.假設(shè)通訊電文中只用到了A,B,C,D,E,F6個(gè)字母,他們在電文中

出現(xiàn)的相對頻率分別為4,18,13,8,20和9,請根據(jù)字符出現(xiàn)頻率構(gòu)造

對應(yīng)的Huffman樹,并為它們設(shè)計(jì)Huffman編碼。

3.已知無向圖G=(V,E),其中V表示頂點(diǎn)集合,E表示邊集合,且

V={a,b,c,d,e},E={<a,b>,<a,c>,<c,d>,<c,e>,<d,e>,<b,d>},請畫出

無向圖G,并寫出該無向圖從頂點(diǎn)a開始的深度優(yōu)先(DFS)遍歷結(jié)果。

五、程序設(shè)計(jì)題(5小題,每小題10分,共50分)

1.從鍵盤輸入一個(gè)字符串(字符中不包

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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

提交評論