國家二級(C語言)筆試模擬試卷202_第1頁
國家二級(C語言)筆試模擬試卷202_第2頁
國家二級(C語言)筆試模擬試卷202_第3頁
國家二級(C語言)筆試模擬試卷202_第4頁
國家二級(C語言)筆試模擬試卷202_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

國家二級(C語言)筆試模擬試卷202

一、公共基礎選擇題(本題共70題,每題7.0分,共

10分。)

1、下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進行查找的是()。

A、無序線性表

B、線性鏈表

C、二叉鏈表

D、順序存儲的有序表

標準答案:D

知識點解析:二分法查找只適用于順序存儲的有序表,表中的元素按值從小到大排

列。

2、下列敘述中,不屬于設計準則的是()。

A、提高模塊獨立性

B、使模塊的作用域在該模塊的控制域中

C、設計成多入口、多出口模塊

D、設計功能可預測的模塊

標準答案:

知識之解析C:大量軟件設計表明,以下的設計準則是可以借鑒為設計的指導和對軟

件結(jié)構(gòu)圖進行優(yōu)化,這些準則是:提高模塊獨立性;模塊規(guī)模適中;深度、寬度、

扇出和扇入適當:使模塊的作用域在該模塊的控制域中:應減少模塊的接口和界面

的復雜性;設計成單入口、單出口的模塊;設計功能可預測的模塊。

3、下列隊列的描述中,正確的是()。

A、隊列屬于非線性表

B、隊列在隊尾刪除數(shù)據(jù)

C、隊列按“先進后出”進行數(shù)據(jù)操作

D、隊歹U按“先進先出”進行數(shù)據(jù)操作

標準答案:D

知識點解析:隊列是只允許在一端刪除,在另一端插入的順序表,允許刪除的一端

叫做隊頭,允許插入的一端叫做隊尾。隊列的操作數(shù)是依據(jù)先進先出的原則進行

的。因此隊列亦稱作先進先出的線性表,或后進后出的線性表。

4、對下列二叉樹進行前序遍歷的結(jié)果為()。

A、ABCDEFGH

B、ABDGEHCF

C、GDBEHACF

D、GDHEBFCA

標準答案:B

知識點解析:遍歷就是不重復地訪問二叉樹的所有結(jié)點。二義樹遍歷的方法有3

種:前序遍歷、中序遍歷和后序遍歷。記住3種遍歷的順序:①前序,訪問根一

按前序遍歷左子樹一按前序遍歷右子樹。②中序,按中序遍歷左子樹一訪問根一

按中序遍歷右子樹。③后序,按后序遍歷左子樹一按后序遍歷右子樹一訪問根。

所以對該二叉樹的中序遍歷結(jié)果為ABDGEHCFo

5、對于長度為n的線性表,在最壞情況下,下列各排序法所對應的比較次數(shù)中正

確的是()。

A、冒泡排序為n(n-l)/2

B、簡單插入排序為n

C、希爾排序為n

D、快速排序為n/2

標準答案:A

知識點解析?:在最壞情況下,冒泡排序所需要的比較次數(shù)為n(n-l)/2;簡單插入

排序所需要的比較次數(shù)為n(n-l)/2:希爾排序所需要的比較次數(shù)OnP);堆排序所

需要的比較次數(shù)為O(nlog2n)o

6、為了使模塊盡可能獨立,要求()。

A、內(nèi)聚程度要盡量高,耦合程度要盡量強

B、內(nèi)聚程度要盡量高,耦合程度要盡量弱

C、內(nèi)聚程度要盡量低,耦合程度要盡量弱

D、內(nèi)聚程度要盡量低,耦合程度要盡量強

標準答案:B

知識點解析:模塊獨立性是指每個模塊只完成系統(tǒng)要求的獨立的子功能,并且與其

他模塊的聯(lián)系最少且接口簡單。耦合性與內(nèi)聚性是模塊獨立性的兩個定性標準,耦

合與內(nèi)聚是相互關(guān)聯(lián)的。在程序結(jié)構(gòu)中,各模塊的內(nèi)聚性越強,則耦合性越弱。

般較優(yōu)秀的軟件設計,應盡量做到高內(nèi)聚,低耦合,即減弱模塊之間的耦合性和提

高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨立性。

7、下列選項中不屬于軟件生命周期開發(fā)階段任務的是()。

A、軟件測試

B、概要設計

C、軟件維護

D、詳細設計

標準答案:C

知識點解析:軟件生命周期分為軟件定義、軟件開發(fā)及軟件運行維護三個階段,其

中開發(fā)階段包括概要設計、詳細設計、實現(xiàn)和測試。

X、數(shù)據(jù)獨立性是數(shù)據(jù)庫技術(shù)的重要特點之一。所謂數(shù)據(jù)獨立性是指()。

A、數(shù)據(jù)與程序獨立存放

B、不同的數(shù)據(jù)被存放在不同的文件中

C、不同的數(shù)據(jù)只能被對應的應用程序所使用

D、以上三種說法都不對

標準答案:D

知識點解析:數(shù)據(jù)獨立性是數(shù)據(jù)與程序間的互不依賴性,即數(shù)據(jù)庫中數(shù)據(jù)獨立于應

用程序而不依順于應用程序。所以選項A,選項B和選項C都不正確。

9、在學校中,“班級”與“學生”兩個實體集之間的聯(lián)系屬于()關(guān)系。

A、一對一

B、一對多

C、多對一

D、多對多

標準答案:B

知識點解析:一個班可以有多名學生,而一名學生只能屬于一個班級,所以“班級”

與,,學生,,兩個實體集之間的聯(lián)系屬于一對多關(guān)系。

10、軟件調(diào)試的目的是()。

A、發(fā)現(xiàn)錯誤

B、改善軟件的性能

C、改正錯誤

D、驗證軟件的正確性

標準答案:C

知識點解析:在對程序進行了成功的測試之后將進入程序調(diào)試,程序調(diào)試的任務是

診斷和改正程序中的錯誤。

二、選擇題(1分)(本題共29題,每題人。分,共29

分。)

11、下面說法正確的是()。

A、一個C程序可以有多個主函數(shù)

B、一個C語言的函數(shù)中只允許有一對花括號

C、C程序的書寫格式是自由的,一個語句可以寫在一行上,也可以寫在多行內(nèi)

D、在對C程序進行編譯時,可以發(fā)現(xiàn)注釋行中的講寫錯誤

標準答案:C

知識點解析:在C語言程序中,合法標識符的命名規(guī)則是:標識符可以由字母、

數(shù)字和下劃線組成,并且第一個字符必須是字母或下劃線。

12、下列不合法的用戶標識符是()。

A、i2_KEY

13、Double

C、4d

D、8

標準答案:D

知識點解析:if語句是用來判定所給的條件是否滿足,根據(jù)判定的結(jié)果(真或假)決

定執(zhí)行給出的兩種操作之一。在if和else后面可以只含一個內(nèi)嵌的操作語句,也

可以有多個操作語句,此時用花括號“{}”將幾個語句括起來成為一個復合語句。選

項D中沒有將兩個操作語句括起來,不能看作一條語句。

13、以下4個選項,不能看作一條語句的是()。

A>(;)

B、intx=0,y=l,7=0;

C、if(!a);

D、)if(b==0)m=l;n=2;

標準答案:D

知識點解析:選項D括號內(nèi)的運算分別是b%a=ll%6=5和a%c=6%4=2,最后得

到5-2=3o

14、設a和b均為血型變量,且a:6、b=ll>c=3,則能使值為3的表達式是()。

A、b%(c%4)

B、b%(c-a%5)

C、b%a-a%5

D、(b%a)-(a%4)

標準答案:D

知識點解析:本題首先判斷a>b,當a>b時結(jié)果等于a,否則等于"d>c?d:b”,因

為a>b,所以直接輸出a的值,注:這里"a:d>c?d:b”是用來干擾考生的。

15、以下程序的輸出結(jié)果是()。main(){inta=4,b=3,c=2,d=hprintf("%d”,

a>b?a:d>c?d:b);}

A、1

B、3

C、2

D、4

標準答案:B

知識點解析:C語言是一種大小寫敏感的語言,因此Int應為int,而casepprimF

則可以使用。

16、閱讀以下程序#includemain。{【nlCase;floatprintF;printf(“請輸入2個

數(shù):");scanR"%d%r',&Case,&printF);printff'%d%f\n",Case,printF);}

以下說法正確的是()。

A、定義語句出錯?,Case是關(guān)鍵字,不能用作用戶自定義標識符,primF不能用作

用戶自定義標識符

B、定義語句出錯,Int無法被識別。

C、定義語句無錯,scanf不能作為輸入函數(shù)使用

D、定義語句無錯,printf不能輸出Case的值

標準答案:C

知識點解析:在C語言中,gwitcb。后的一對圓括號中可以是整型表達式或字符表

達式。case語句后面的常量表達式的類型必須與switch后圓括號中的表達式類型

相同,各case語句標號的值應該互不相同。選項A中case后面的常量表達式為實

型,所以不正確;選項D中case后面出現(xiàn)了變量表達式,所以選項D錯誤。

17,若有定義:floatx=l.5:inta=l,b=3,c=2;則正確的switch語句是()“

A、switch(x){case1.0:print/*\n");case2.0:printf("***\n");}

B、switch((int)x);{case1:printff4*\n^);case2:printfp**\n");}

C、switch(a+b){case1:printf(<€*\n,,)jcase2+1:printR"**\n");}

D、svvitch(a+b){case1:printf("*\n");casec:printf(t4**\n,');)

標準答案:D

知識點解析:本題考查不同進制間的轉(zhuǎn)換。printf輸出函數(shù)中輸出變量的格式,由

輸出格式符決定。題中“%0”格式符表示以八進制的形式輸出;“%x”格式符表示

以十六進制的形式輸出?!?3”的八進制和十六進制分別是41和21。

18、有以下程序:main(){intk=33;printf("%d,%o,%x”,k,k,k);}執(zhí)行后的

輸出結(jié)果是()。

A、33,033,0x21

B、33,033,21

C、33,041,021

D、33,41,21

標準答案:C

知識點解析:本程序是通過gctchar。函數(shù)讀入字符,并通過putchar。函數(shù)將字符逐

個輸出,當用戶輸入“?”時停止輸出。

19、當輸入為“Fool&Swalow”時,下面程序的執(zhí)行結(jié)果是()。#includemain(){char

c;whilc(c!=?){c=gctchar();putchar(c);}}

A、Swalow

B、Fool

C、Fool?

D^?Swalow

標準答案:A

知識點解析:本題中,(int)(x+1000+0.5)的結(jié)果為1237,(float)lOOO是將1000強

制轉(zhuǎn)換成float類型;整個表達式(int)(x*1000+0.5:i/(float)1000的結(jié)果為

1.237000,再以實數(shù)(6位小數(shù))形式輸出。

20、下面程序段的輸出結(jié)果是()。#includemain()|floatx=l.236547;printff4\

a”,(im)(x*l000+0.5)/(float)1000);}

A、1.237000

B、輸出格式說明與輸出項不匹配,輸出無定值

C、1.236000

D、1.24

標準答案:A

知識點解析:本題考查print的輸出格式和條件表達式“?:”的使用。①printf函數(shù)

輸出時,“&&&%d\n”和“!!!%d\n”中的“&&&”和“!!『都是直接輸出。②條件表

達式的基本格式為:a?b:c。其運算規(guī)則為:當a為非0時,整個表達式的值取b

的值,當a為。時,整個表達式取c的值。printf函數(shù)中如果在格式說明符之前插

入任何字符都將原樣輸出。本題中a>b為真,所以返回

21、若變量都已正確說明,則以下程序段()。includemain(){inta=8;inlb=6:

primf(a>b?”&&&a=%d":”!!!b=%d",a,b);}

A、輸出為:&&&a=8

B、輸出為:!!!b=8

C、輸出為:&&&a=8!!!b=6

D、全部錯誤

標準答案:C

知識點解析:“\h”格式符表示退格.功能是將它后面的字母把它前面的字母覆

蓋,導致“\b”格式符前面的字母不能輸出;“v”格式符表示輸出單引號字符;“\

\"格式符表示輸出反斜線字符。

22、語句%而"匕\附0亞\匕代\'丫\\\1)011\1門;''的輸出結(jié)果是()。

A、a\bhow\4arc\'y、\\bou

B、a\bhow\'are\'y\bou

C^how'are5you

D、ahow'arc'y\bou

標準答案:A

知識點解析:分析程序可知,程序循環(huán)5次,然后利用if語句決定每次循環(huán)時輸

出的字符。當i為奇數(shù)時,i%2=l,if(i%2)為真,輸出“*”;當i為偶數(shù)時,i%

2=0,if(i%2)為假,執(zhí)行else語句,輸出“#",所以當i取I、3、5值時輸出“*”,

當i取2、4值時輸出

23、卜面程序的運行結(jié)果是()。#include4tstdio.h"main(){inti;for(i=l;i<=5;

i++){if(i%2)printf("*");elseprintff鏟);})

A、*#*#*

B、#*#*#*

C、*#*#

D、#*#*

標準答案:A

知識點解析:return語句主要用于返回函數(shù)的值。在一個自定義函數(shù)中,可以根據(jù)

不同的情況設置多條return語句返回函數(shù)的值,也可以不包含return語句。

24、以下關(guān)于return語句的敘述中不正確的是()。

A、一個自定義函數(shù)中必須有一條return語句

B、一個自定義函數(shù)中可以根據(jù)不同情況設置多條?urn語句

C、如果一個函數(shù)有多個relurn語句,那么不論運行到哪一個return語句,該函數(shù)

將結(jié)束

D、沒有return語句的自定義函數(shù)在執(zhí)行完最后一先語句時返回到調(diào)用處

標準答案:C

知識點解析:本題考查do…while循環(huán)。在do...while構(gòu)成的循環(huán)體中,總是先執(zhí)

行一次循環(huán)體,然后再求表達式的值。當執(zhí)行完笫三次循環(huán)時,得到n=3,while

循環(huán)表達式仍然成立,接著執(zhí)行直到n=4,表達式不成立,跳出循環(huán),結(jié)束程序。

25有以下程序:main(){intn=0;do{n++;printf("%d\n",

n);)while(n<=3);}程序的輸出結(jié)果是()。

A、12

B、123

C>1234

D、1

標準答案:R

知識點解析:本題中dcl(cbar*s)函數(shù)實現(xiàn)的功能是:逐個讀入s數(shù)組中的字符,如

果遇到數(shù)字,則將其重新存在s中,遇到非數(shù)字字符則跳過。所以最后輸出的應該

是字符串s中的所有數(shù)字。

26、下面程序的運行結(jié)果是()。#includcvoiddcl(char*s){inti,j;char*a:a=s:

<,t,t,

for(i=0,j=0;a[i]!=\0;i++){if(a[i]>=0&&a[i]<=9){s[i]=a[i[;j++;)

s[j]='\O';}}main(){chars[]=,,aa89gggh,>;del(s);printf(“ha%s",s);}

A、aa

B、89

C、gggh

D、aa89gggh

標準答案:B

知識點解析:該函數(shù)中fun是一個函數(shù)指針。指向一個返回int的函數(shù)。

27、下列說法不正確的是

A、int*fun(>——fun是一個返回int指針的函數(shù)

B、int(*fim)();—fun是一個返回int指針的函數(shù)

C、hat(*array[5|)();?…array是一個有5個元素的數(shù)組,每一個元素都是一個函數(shù)

指針,指向一個返回ini的函數(shù)。

D、int(*fun(int))(inC;—-fun是帶有一個int參數(shù)的函數(shù),返回值是一個函數(shù)指

針,這個指針指向帶有一個血參數(shù)并返回int的函數(shù)。

標準答案:B

知識點解析:本題考查函數(shù)調(diào)用時的參數(shù)傳遞。分析題目可知fun函數(shù)的形參是指

向?qū)崊⒌闹羔?,但main。函數(shù)中調(diào)用fun()函數(shù)時,實參是指針變量x、y(分別為指

向8和b的指針),a、b的值在函數(shù)調(diào)用前后未發(fā)生變化,因而a=l,b=2,即輸出

12?

28、卜列程序的輸出結(jié)果是()。#includevoidfun(int*a,int*b))int*k;k=a;

a=b;b=k;}main(){inta=l,b=2,*x:&a,*y=&b;fun(x,y);printf("%d%

dl“,a,b);}

A、21

B、12

C、編譯出錯

D、00

標準答案:B

知識點解析:此題考查的是二維數(shù)組的初始化。題干中數(shù)組a的第二個下標為3,

由此可知數(shù)組a是一個2行3列的數(shù)組,初始化時未賦初值的元素的值自動為0,

所以與選項B是等價的,最后一個元素的值為0。

29、下列二維數(shù)組初始叱語句中,正確且與語句ima口2,3,4,5}等價的

是()。

A、inta[2]:{{I,2,3},{4)5}}:

B、inta[][3]:{1,2,3,4,5,0);

Csinta[][3]={{l,0),{2,0),{3,0));

D.inta[2]={{l,2,3},{4,5,6}):

標準答案:C

知識點解析:strlen(s)返回s字符串中字符的個數(shù),若s是一個數(shù)組,則返回數(shù)組元

素的個數(shù)。

30、有以下字符串,說明表達式strten(s)值的是()。chars[10]={ta,,*\n\4a\

'b','\t','c'};

A、10

B、1

C、6

D、7

標準答案:A

知識點解析:此題考查的是函數(shù)參數(shù)的傳遞。main函數(shù)中首先調(diào)用fun函數(shù),fun

函數(shù)的功能是使字符c的ASCII碼值加1并輸出,使d加1并輸出對應的字符;

fun(&b,a)輸出“g,G”,但是由于fun函數(shù)的第一個參數(shù)進行的是地址傳遞,而第

二個參數(shù)進行的是值傳遞,所以main函數(shù)中的printf函數(shù)輸出“F,浮。

31、有以下程序:#includevoidfun(char*c,intd){*c=*c+l;d+=l:printff'%

c,%c",*c,d);}main(){chara=T\b=T;fun(&b,a);print("%c,%c\

nM,a,b);}程序的輸出結(jié)果為O。

A、g,GF,g

B、g,卜卜,g

C、G,fF,G

D、f,gf,g

標準答案:D

知識點解析:本題考查如何引用數(shù)組元索的地址。選項A中,p+5引用的是a[5]的

地址,而數(shù)組a只有5個元素,即a[0]、a[l].a[2],a[3]、a[4],所以引用錯誤;

選項B中,*a+1指的是將數(shù)組a的第一個元素加1;選項C中,這種引用方式錯

誤;選項D中,&a[0]引用的是數(shù)組的首地址。

32、若有以下定義,則對a數(shù)組元素地址的正確引用是().inta[5],*p=a;

A、p+5

B、a+l

C、&a+l

D、&a[0]

標準答案:C

知識點解析:本題考查字符串比較函數(shù)strcmpO,調(diào)用形式:strcmp(str+l,

str+2),其中str+1、str+2分別是字符串存儲區(qū)的首地址,函數(shù)功能:比較字符串

slrl和str2,當slrlslr2,返回值為正數(shù)。注意:不能使用關(guān)系運算符比較兩個字符

串的大小c

33、判斷字符串si是否大于字符串s2,應該使用()。

A、if(strcmp(sl,s2)<0)

B、if(sl>s2)

CNif(strcmp(s2,sl)<0)

D、if(strcmp(sl,s2))

標準答案:B

知識點解析:本題考查字符比較函數(shù)和字符復制函數(shù):strcmp(sl,s2);函數(shù)功

能:比較字符串sirl和雙己比較的是字符的ASCII碼的值,當sytlsyl2,返回值為

正數(shù)。

34若輸入bcdefgh、m、abodefg,以下程序的輸出結(jié)果為()。#include#include

main(){inti;charstring!201,str|3]|20|;for(i=0;<3;i++)gets(str[i]);

if(strcmp(str[O],str[1])>0)strcpy(string,str|O|);elsestrcpy(string,str|1]);

if(strcmp(str[2],string)>0)strcpy(string,str[2]);printfft%s,\string);}

A^bcdefgh

B、m

C、abcdefg

D^bcdefgh或abcdefg

標準答案:C

知識點解析:本題考查的是for循環(huán)以及while循環(huán)。fun函數(shù)中定義了靜態(tài)變量

i=0,fim(a)使得a[0]=a[0]+a[l]=4,a[l]=a[l]+a[2]=8,此時i的值變?yōu)?,++i<2不

成立,所以do?while循環(huán)結(jié)束,輸出數(shù)組a的各元素即得到48549。

35、請閱讀以下程序:#include#includevoidfun(intb[]){staticinti=0;do{b[i]+:

b[i+l];}while(++i<2);)main(){intk,a[5]={1,3,5,4,9);fun(a);

for(k=0;k<5;k++)printf(“%d”a[k]);}上面程序的輸出是

A、13579

B、48579

C、48549

D、48999

標準答案:D

知識點解析:分析程序,i+=k;使得i的值每次增加2然后再和j進行比較看i>j是

否成立,i的變化過程為:i=2,i=4,i=6,i=8,i=10,i=12,此時i>j成立,所以判

斷閆共執(zhí)行的次數(shù)為6次。

36、在下述程序中,判斷i>j共執(zhí)行的次數(shù)是()。main(){inti=0,j=10,k=2,

s=0;for(;;)[i+=k;if(i>j){prinm"%d”,s);break;}s+=i:)}

A、4

B、7

「、5

D、6

標準答案:B

知識點解析:本題考查的是結(jié)構(gòu)和數(shù)組元素所占的字節(jié)數(shù)。題目中定義的結(jié)構(gòu)st

因為包含x、y、z這3個元素,所以slze(stwctst)=2+2+2=6;而聯(lián)合體所占的字節(jié)

數(shù),由于最后存入的元素會把前面存入的元素覆蓋掉,所以聯(lián)合體所占的字節(jié)數(shù)就

是占據(jù)最多存儲單元的元素所占的字節(jié)數(shù),sizeof(un)=sizeof(long)=4。

37、下列程序的輸出結(jié)果是()。#include4tstdio.h^mainO{structst{inty,x,z:}

union{longi;intj;chark;)un;pfintR"%d,%d\n”,sizeof(structst),

sizeof(un));}

A、6,2

B、6,4

C>8,4

D、8,6

標準答案:B

知識點解析:由于聯(lián)合體是同一存儲區(qū)域由不同類型的變量共享,所以不可以直接

對聯(lián)合體變量名進行賦值,且聯(lián)合體中的空間在某一時刻只能保持某一成員的數(shù)

據(jù);另外合體中可以出現(xiàn)結(jié)構(gòu)類型的成員。

38、以下對聯(lián)合類型敘述正確的是()。

A、可以對聯(lián)合變量名直接賦值

B、使用聯(lián)合變量的目的是為了節(jié)省內(nèi)存

C、任何一個聯(lián)合變量可以同時引用聯(lián)合中的不同成員

D、聯(lián)合類型定義中不能同時出現(xiàn)結(jié)構(gòu)類型的成員

標準答案:A

知識點解析:本題主要考查按位異或和右移運算。b=4的二進制為00000100,

b?2后為00000001,a=2的二進制為00000010,兩者異或為00000011。

39、以卜程序中c的二進制值是()。chara=2,b=4,c;c=aAb?2

A、00000011

B、00010100

C、00011100

D、00011000

標準答案:A

知識點解析:分析程序段,首先以只寫方式打開文件,利用fprinlf函數(shù)將i和j的

值寫入到文件dl.dat中,然后關(guān)閉文件;再以只讀方式打開文件,利用格式叱輸

入函數(shù)fscanf將文件中的數(shù)據(jù)賦值給k和n,最后輸出k和n的值,分別是20和

30o

40、有以下程序includemain。{FILE*fp:inti=20j=30,k,n;

a=fbpcn(’'d1.dat","w");fprintf(fp,u%d\i);fprintf(fp/*%d\n,\j):

fclose(fp);fp=fbpen(t4dl.dat",T');fscanf(好,"%d%d“,&k,&n);printff'%d%d

\n”,k,n);fclose(fp);}程序運行后的輸出結(jié)果是()。

A、2030

B、2050

C、3050

D、3020

標準答案:

知識點解析:暫無解析

三、公共基礎填空題(本題共5題,每題分,共5

分。)

41、數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)與o

標準答案:存儲結(jié)構(gòu)

知識點解析:數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集

合,即數(shù)據(jù)的組織形式。它分為數(shù)據(jù)的邏輯結(jié)構(gòu)和數(shù)據(jù)的存儲結(jié)構(gòu)。

42、在面向?qū)ο蠓椒ㄖ?,對象之間進行通信的構(gòu)造稱為。

標準答案:消息

知識點解析:對象之間進行通信的構(gòu)造叫做消息、,它請求對象執(zhí)行某一處理或回答

某一要求的信息,它統(tǒng)一了數(shù)據(jù)流和控制流。

43、衡量軟件的模塊獨立性使用耦合性和內(nèi)聚性兩個定性的度量標準,其中

是度量一個模塊功能強度的一個相對指標。

標準答案:內(nèi)聚性

知識點解析:模塊的獨立程度是評價設計好壞的重要度量標準。衡量軟件的模塊獨

立性使用耦合性和內(nèi)聚性兩個定性的度量標準。內(nèi)聚性是度量一個模塊功能強度的

一個相對指標,耦合性則用來度量模塊之間的相互聯(lián)系程度。

44、一名學生只能住一間宿舍,一間宿舍可住多名學生,則實體“宿舍”與實體"學

生''的聯(lián)系屬于的聯(lián)系。

標準答案:一對多

知識點解析:在現(xiàn)實世界中事物間的關(guān)聯(lián)稱為聯(lián)系。在概念世界中聯(lián)系反映了實體

集間的一定關(guān)系。兩個實體集間的聯(lián)系實際上是實體集間的函數(shù)關(guān)系,這種函數(shù)關(guān)

系可以有3利分別是一對一,一對多和多對多,依據(jù)題意,一名學生只能住一間

宿舍,一間宿舍可住多名學生,所以實體“宿舍”與實體"學生”的聯(lián)系屬于一對多的

聯(lián)系。

45、數(shù)據(jù)模型包括數(shù)據(jù)結(jié)構(gòu)、和數(shù)據(jù)條件。

標準答案:數(shù)據(jù)操作

知識點解析:數(shù)據(jù)模型就是現(xiàn)實世界的反映,數(shù)據(jù)模型所描述的內(nèi)容有3個部分,

它們是數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作與數(shù)據(jù)約束。

四、填空題(本題共8題,每題1.0分,共8分。)

46N定義定ta=5,b=20;若執(zhí)行語句printf("%d\n",++a*—b/5%13);后,輸出

的結(jié)果為O

標準答案:9

知識點解析:此題考查的是算術(shù)運算符。依照運算級的優(yōu)先性,首先執(zhí)行“++”和”-

“++a”執(zhí)行之后a的值變?yōu)?,++a*-b=(++a)*(-b)=6*19=l14;此后再依次執(zhí)行

/和%,++a*-b/5%13=114/5%13=22%13=9。

47、執(zhí)行程序時的輸入為123456789,則程序的運行結(jié)果為。

#include<4stdio.h”main。{inta,b;scanf("%2d%*2d%1d“,&a,&b);

printf(u%d\n,\a-b);)

標準答案:7

知識點解析:本題考查的是scanf函數(shù)。題目中,“%2d”是指讀入整型數(shù)據(jù),允許

的數(shù)據(jù)寬度是2位;“*2d”指空余2位不讀入;所以最終讀入的a的值為12,b的

值為5,即得到a-b=7,最終輸出a-b的值7。

48、以卜程序運行后的瑜出結(jié)果是Q#includemain(){char

ch[]-4abcdn,x[4][4];inti;for(i=0;i<4;i++)strcpy(x[i],ch);for(i:0;i<4;

i++)printf("%s”,&x[i][i]);printfC\n^):}

標準答案:abcdabcdabcdabcdbcdabcdabcdcdabcdd

知識點解析:本題考查的是二維數(shù)組。本題定義了一個4行4列的二維數(shù)組x,通

過tor循環(huán)以及strcpy函數(shù)將字符數(shù)組ch的值、abed'分別復制到了x數(shù)組的每一

行,使得二維數(shù)組每一行的值均為,abed1再通過第二個for循環(huán)輸出每一行上所

要求輸出的字符串,當i=0時,輸出以x[0]⑼的地址為首地址的字符串“abed”;當

x=l時,輸出以的地址為首地址的字符串“b字”;當x=2時,輸出以x⑵⑵

的地址為首地址的字符串“cd";當x=3,輸出以x[3]|3]地址為首地址的字符串

“d”。

49、閱讀下面程序,則程序的執(zhí)行結(jié)果為o#includc4tstdio.h"

main(){inta=10;fun(ai;.printf{“%d\n",a);|fun(intxl{x=50;}

標準答案:10

知識點解析:由于此程序中,fun函數(shù)的實參和形參進行的是值傳遞,所以形參值

的改變不會影響到實參值,因此變量a的值還是最初賦的初值10。

50以下程序的輸出結(jié)果是ointfun(intx,inty,int*p,int*q)

{*p=x*y;*q=x/y;)main(){inta,b,c,d;a=4;b=3;fun(a,b,&c,&d);

prints%d,%d\n”,c,d);}

標準答案:12,1

知識點解析:此程序中函數(shù)fun的實參和形參進行的是地址值的傳遞,因此被調(diào)用

函數(shù)中形參值的改變會改變實參值。所以c=3*4=12,<1=4/3=1o

51、下面程序是求出數(shù)組an?的兩條對角線上的元素之和,請?zhí)羁铡?/p>

#includct4stdio.h,?main(){intarr[3][3]={2,3,4,8,3,2,7,9,8),a=0,

b=0,i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)if(i=j)a=a+arr[i][j];for(i:0;i<3;

i++)for

溫馨提示

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

評論

0/150

提交評論