2021-2022年安徽省淮北市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第1頁(yè)
2021-2022年安徽省淮北市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第2頁(yè)
2021-2022年安徽省淮北市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第3頁(yè)
2021-2022年安徽省淮北市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第4頁(yè)
2021-2022年安徽省淮北市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩29頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2021-2022年安徽省淮北市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.以下敘述中錯(cuò)誤的是()。

A.函數(shù)的返回值類(lèi)型不能是結(jié)構(gòu)體類(lèi)型,只能是簡(jiǎn)單類(lèi)型

B.函數(shù)可以返回指向結(jié)構(gòu)體變量的指針

C.可以通過(guò)指向結(jié)構(gòu)體變量的指針訪問(wèn)所指結(jié)構(gòu)體變量的任何成員

D.只要類(lèi)型相同,結(jié)構(gòu)體變量之間可以整體賦值

2.已知二叉樹(shù)后序遍歷序列是dabeC,中序遍歷序列是debaC,它的前序遍歷序列是()。

A.aChedB.deCabC.deabeD.Cedba

3.

4.數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指()。

A.存儲(chǔ)在外存中的數(shù)據(jù)B.數(shù)據(jù)所占的存儲(chǔ)空間量C.數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式D.數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示

5.人們提出了用______的原理來(lái)設(shè)計(jì)軟件,這就是軟件工程學(xué)誕生的基礎(chǔ)。

A.計(jì)算機(jī)科學(xué)B.數(shù)學(xué)C.工程學(xué)D.運(yùn)籌學(xué)

6.以下選項(xiàng)中,能用作數(shù)據(jù)常量的是______。A.o115B.0118C.1.5e1.5D.115L

7.設(shè)有遞歸算法如下試問(wèn)計(jì)算x(x(8))時(shí)需要計(jì)算()次x函數(shù)。A.8B.9C.16D.18

8.設(shè)有定義intn=0,*p=&n,**q=&p;,則下列選項(xiàng)中正確的賦值語(yǔ)句是

A.p=1;B.*q=2;C.q=p;D.*p=5;

9.數(shù)據(jù)結(jié)構(gòu)中,在邏輯上可以把數(shù)據(jù)結(jié)構(gòu)分成()。

A.動(dòng)態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)B.緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)C.線性結(jié)構(gòu)和非線性結(jié)構(gòu)D.內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)

10.若有以下程序:inta=1,b=2:a=a^b:b=b^a:則執(zhí)行以上語(yǔ)句后a和b的值分別是()。

A.a=1,b=2B.a=3,b=lC.a=3,b=2D.a=2.b=1

11.下列敘述中錯(cuò)誤的是()。A.程序可以由多個(gè)程序文件組成

B.一個(gè)C語(yǔ)言程序只能實(shí)現(xiàn)一種算法

C.程序可以由一個(gè)或多個(gè)函數(shù)組成

D.一個(gè)C函數(shù)可以單獨(dú)作為一一個(gè)c程序文件存在

12.有以下程序:#include<stdio.h>main(){inty=10;while(y--);printf(“y=%d\n”,y);}程序運(yùn)行后的輸出結(jié)果是()。

A.y=0B.y=-1C.y=1D.while構(gòu)成無(wú)限循環(huán)

13.以下敘述中正確的是()。

A.構(gòu)成C程序的基本單位是函數(shù)

B.可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)

C.main函數(shù)必須放在其他函數(shù)之前

D.C函數(shù)定義的格式是K&R格式

14.某二叉樹(shù)共有7個(gè)結(jié)點(diǎn),其中葉子結(jié)點(diǎn)只有l(wèi)個(gè),則該二叉樹(shù)的深度為(假設(shè)根結(jié)點(diǎn)在第1層)()。

A.3B.4C.6D.7

15.

16.一個(gè)長(zhǎng)度為99的循環(huán)鏈表,指針A和指針B都指向了鏈表中的同一個(gè)節(jié)點(diǎn),A以步長(zhǎng)為1向前移動(dòng),B以步長(zhǎng)為3向前移動(dòng),一共需要同時(shí)移動(dòng)多少步A和B才能再次指向同一個(gè)節(jié)點(diǎn)()。

A.99B.100C.101D.49E.50F.51

17.若有定義語(yǔ)句:inta[3][6];,按在內(nèi)存中的存放順序,a數(shù)組的第10個(gè)元素是A.a[0][4]B.a[1][3]C.a[0][3]D.a[1][4]

18.向一個(gè)棧頂指針為H的鏈棧中執(zhí)行出棧運(yùn)算時(shí),需執(zhí)行()。

A.p=H;H=H->link;free(p);

B.H=H->link;free(H);

C.p=H;H->link=H->link->link;free(p);

D.p=H;H=H->link;

19.有三個(gè)關(guān)系R、s和T如下:

由關(guān)系R和s通過(guò)運(yùn)算得到關(guān)系T,則所使用的運(yùn)算為()。

A.并B.自然連接C.笛卡爾積D.交

20.當(dāng)一個(gè)函數(shù)無(wú)返回值時(shí),定義它的函數(shù)類(lèi)型應(yīng)是()。

A.voidB.intC.任意D.無(wú)

二、2.填空題(20題)21.下列軟件系統(tǒng)結(jié)構(gòu)圖的寬度為[]。

22.深度為5的滿二叉樹(shù)中,葉子結(jié)點(diǎn)的個(gè)數(shù)為_(kāi)_____。

23.在內(nèi)存中,存儲(chǔ)字符'x'要占用1個(gè)字節(jié),存儲(chǔ)字符串"x"要占用【】個(gè)字節(jié)。

24.有下面的程序:

#include<stdio,h>

main()

{enumteam{my,your=4,his,her=his+10};

prinff("%d%d%d%d\n",my,your,his,her);

此程序的輸出結(jié)果是【】。

A)0123B)04010C)04515D)14515

25.在計(jì)算機(jī)中,字符的比較是對(duì)它們的【】進(jìn)行比較。

26.在樹(shù)形結(jié)構(gòu)中,樹(shù)根結(jié)點(diǎn)沒(méi)有______。

27.下列程序中字符串中各單詞之間有一個(gè)空格,則程序的輸出結(jié)果是【】。

#include<string.h>

main()

{charstr1[]="Howdoyoudo",*p1=str1;

strcpy(str1+strlen(str1)/2,"eshe");

printf("%s\n",p1);

}

28.數(shù)據(jù)元素之間______的整體稱(chēng)為邏輯結(jié)構(gòu)。

29.性結(jié)構(gòu)中,第一個(gè)結(jié)點(diǎn)沒(méi)有前驅(qū)結(jié)點(diǎn),其余每個(gè)結(jié)點(diǎn)有且只有【】個(gè)前驅(qū)結(jié)點(diǎn);最后一個(gè)結(jié)點(diǎn)沒(méi)有后繼結(jié)點(diǎn),其余每個(gè)結(jié)點(diǎn)有且只有【】個(gè)后繼結(jié)點(diǎn)。

30.模式/內(nèi)模式映射為數(shù)據(jù)庫(kù)提供了【】數(shù)據(jù)獨(dú)立性。

31.下面程序的功能是輸出數(shù)組中最大的數(shù),由a指針指向該元素。請(qǐng)?zhí)羁铡?/p>

main()

{ints[]={6,7,2,13,9,1,12,10,5,8,4,3,11),*a,*b;

for(【】)

if(*a<*b)a=b;

printf("%d",*a);

}

32.以下函數(shù)用來(lái)求出兩整數(shù)之和,并通過(guò)形參將結(jié)果傳回,請(qǐng)?zhí)羁铡?/p>

voidfunc(intx,inty,【】z)

{*z=x+y;}

33.定義inta=5,b;,則執(zhí)行表達(dá)式b=++a*--a之后,變量b的值為【】。

34.以下程序的功能是:輸出100以?xún)?nèi)(不含100)能被3整除且個(gè)位數(shù)為6的所有整數(shù),請(qǐng)?zhí)羁铡?/p>

#include<stdio.h>

main()

{inti,j

for(i=0;【】;i++)

{j=i*10+6;

if(【】)continue:

Printf("%d”",j);

}

}

35.度為10的線性表進(jìn)行冒泡排序,最壞情況下需要比較的次數(shù)為_(kāi)_____。

36.若有以下程序:

intf(intx,inty)

{return(y-x)*x;}

main()

{inta=3,b=4,c=5,d;

d=f(3,4),f(3,5));

printf("%d\n",d);

}

執(zhí)行后輸出結(jié)果是【】。

37.若x和a均是int型變量,則計(jì)算完x=(a=4,6*2)后的x值為_(kāi)_____。

38.下列程序的輸出結(jié)果是【】。

main()

{inta=1,b=2;

a=a+b;b=a-b,a=a-b;

printf("%d,%d\n",a,b);

}

39.下列程序的輸出結(jié)果是______。

#include<stdio.h>

main()

{inta=2,b=-1,c=2;

if(a<b)

if(b<0)c=0;

elsec++;

printf("%d\n",c);

}

40.結(jié)構(gòu)化程序設(shè)計(jì)的3種基本結(jié)構(gòu)分別是順序、選擇和______。

三、1.選擇題(20題)41.以下對(duì)聯(lián)合類(lèi)型敘述正確的是()。

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

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

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

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

42.以下程序的輸出結(jié)果是()。#include<stdio.h>voidprt(int*x,int*y,int*z){printf("%d,%d,%d\n",++*x,++*y,*(z++));}main(){inta=10,b=40,c=20;prt(&a,&b,&C);prt(&a,&b,&C);}

A.11,42,3112,22,41

B.11,41,201,42,20

C.11,21,4011,21,21

D.11,41,2112,42,22

43.下列工具中為需求分析常用工具的是()。

A.PADB.PFDC.N-SD.DFD

44.若有定義inta[2][3];,則對(duì)a數(shù)組的第i行第j列(假調(diào)i,j已正確說(shuō)明并賦值)元素值的正確引用為

A.*(*(a+i)+j)B.(a+i)[j]C.*(a+i+j)D.*(a+i)+j

45.以下選項(xiàng)中,能用作數(shù)據(jù)常量的是()。

A.18B.11C.0.800.5D.25L

46.15.與數(shù)據(jù)元素本身的形式、內(nèi)容、相對(duì)位置、個(gè)數(shù)無(wú)關(guān)的是數(shù)據(jù)的()

A.存儲(chǔ)結(jié)構(gòu)B.存儲(chǔ)實(shí)現(xiàn)C.邏輯結(jié)構(gòu)D.運(yùn)算實(shí)現(xiàn)

47.以下程序的輸出結(jié)果是______。#defineTIMES(X)X*Xmain(){inta=16,k=2,m=1;a/=TIMES(k+m)/TIMES(k+m);printf("d\n",a);}

A.16B.2C.9D.1

48.數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的()。

A.存儲(chǔ)問(wèn)題B.共享問(wèn)題C.安全問(wèn)題D.保護(hù)問(wèn)題

49.下列不是合法的C語(yǔ)言語(yǔ)句是()。

A.a=5B.{inti;i++;}C.;D.{;}

50.以下能正確定義的數(shù)組并正確賦初值的語(yǔ)句是

A.intN=5,b[N][N];

B.inta[1][2]={{1},{3}};

C.intc[2][]={{1,2},{3,4}};

D.intd[3][2]={{1,2},{3,4}};

51.下列敘述中正確的是()。

A.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)只能有一種存儲(chǔ)結(jié)構(gòu)

B.數(shù)據(jù)的邏輯結(jié)構(gòu)屬于線性結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)屬于非線性結(jié)構(gòu)

C.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)不影響數(shù)據(jù)處理的效率

D.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)影響數(shù)據(jù)處理的效率

52.語(yǔ)句“printf("a\bhow\'are\'y\\\bou\n");”的輸出結(jié)果是()。

A.a\bhow\'are\'y\\bou

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

C.how'are'you

D.ahow'are'y\bou

53.算法的時(shí)間復(fù)雜度是指______。

A.執(zhí)行算法程序所需要的時(shí)間B.算法程序的長(zhǎng)度C.算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)D.算法程序中的指令條數(shù)

54.C語(yǔ)言程序的基本單位是______。

A.程序行B.語(yǔ)句C.函數(shù)D.字符

55.有以下程序:#include<string.h>main(){charp[]={'a','b','c'},q[10]={'a','b','c'};printf("%d%d\n",strlen(p),strlen(q));}以下敘述中正確的是()。

A.在給p和q數(shù)組置初值時(shí),系統(tǒng)會(huì)自動(dòng)添加字符串結(jié)束符,故輸出的長(zhǎng)度都為3

B.由于p數(shù)組中沒(méi)有字符串結(jié)束符,長(zhǎng)度不能確定;但q數(shù)組中字符串長(zhǎng)度為3

C.由于q數(shù)組中沒(méi)有字符串結(jié)束符,長(zhǎng)度不能確定;但p數(shù)組中字符串長(zhǎng)度為3

D.由于p和q數(shù)組中都沒(méi)有字符串結(jié)束符,故長(zhǎng)度都不能確定

56.

有以下程序:

main

{intx=102,y=012;

printf("%2d,%2d\n",x,y);

}

執(zhí)行后輸出結(jié)果是()。

A.10,01B.02,12C.102,10D.02,10

57.在C語(yǔ)言中,函數(shù)中變量的隱含存儲(chǔ)類(lèi)別是______。

A.autoB.staticC.externD.無(wú)存儲(chǔ)類(lèi)別

58.語(yǔ)句int(*ptr)()的含義是()。

A.ptr是一個(gè)返回值是int的函數(shù)

B.ptr是指向int型數(shù)據(jù)的指針變量

C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)

D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針

59.按通信距離劃分,計(jì)算機(jī)網(wǎng)絡(luò)可以分為局域網(wǎng)和廣域網(wǎng)。下列網(wǎng)絡(luò)中屬于局域網(wǎng)的是()

A.InternetB.CERNETC.NovellD.CHINANET

60.有以下程序______。#defineP3voidF(intx){return(P*x*x);}main(){printf("%d\n",F(xiàn)(3+5));}程序運(yùn)行后的輸出結(jié)果是______。

A.192B.29C.25D.編譯出錯(cuò)

四、選擇題(20題)61.若有定義語(yǔ)句“inta,b;doubleX;”,則下列選項(xiàng)中沒(méi)有錯(cuò)誤的是()。

A.switch(X%2){case0:a++;break;casel:b++;break;default:a++;b++;}

B.switch((int)x/2.O){case0:a++;break;casel:b++;break;default:a++;b++;}

C.switch((int)X%2){case0:a++;break;casel:b++;break;default:a++;b++;}

D.switch((int)(x)%2){case0.0:a++;break;casel.0:b++;break;default:a++;b++;}

62.有以下程序:

程序運(yùn)行后的輸出結(jié)果是()。

A.11B.9C.6D.7

63.

64.用鏈表表示線性表的優(yōu)點(diǎn)是()。

A.便于隨機(jī)存取B.花費(fèi)的存儲(chǔ)空間較順序存儲(chǔ)少C.便于插入和刪除操作D.數(shù)據(jù)元素的物理順序與邏輯順序相同

65.

66.以下能正確定義賦初值的語(yǔ)句是()。

A.intnl=n2=10:

B.Chare=32;

C.floatf=f+1.1;

D.doublex=12.3E2.5;

67.

68.有以下程序:

程序運(yùn)行后的輸出結(jié)果是()。

A.let=4B.m=2C.m=6D.m=5

69.

70.

71.以三級(jí)模式為框架形成的3種數(shù)據(jù)庫(kù)中,真實(shí)存在于計(jì)算機(jī)外存的數(shù)據(jù)庫(kù)是()。

A.概念數(shù)據(jù)庫(kù)B.用戶(hù)數(shù)據(jù)庫(kù)C.物理數(shù)據(jù)庫(kù)D.邏輯數(shù)據(jù)庫(kù)

72.

73.對(duì)兩個(gè)數(shù)組a和b進(jìn)行下列初始化:

charm[]1="l234567":

charn[]={'1','2','3','4','5','6','7');

則下列敘述正確的是()。A.A.數(shù)組m與數(shù)組n完全相同

B.數(shù)組m與數(shù)組n長(zhǎng)度相同

C.數(shù)組m比數(shù)組n長(zhǎng)1

D.數(shù)組m與數(shù)組n中都存放字符串

74.下面描述中,不屬于軟件危機(jī)表現(xiàn)的是()A.軟件過(guò)程不規(guī)范B.軟件開(kāi)發(fā)生產(chǎn)率低C.軟件質(zhì)量難以控制D.軟件成本不斷提高

75.

下列程序的輸出結(jié)果是()。

#include<stdio.h>

main

{structst

{inty,x,z;

};

union

{longi;

intj;

chark;

}un;

printf("%d,%d\n",sizeof(structst),sizeof(un))

}

A.6,2B.6,4C.8,4D.8,6

76.

77.有以下程序:

voidmain()

{inta=15,b=21,m=0;

switch(a%3)

{case0:m++;break;

case1:m++;

switch(b%2)

{defaule:m++;

case0:m++;break;

}

}

printf("%d\n",m);

}

程序運(yùn)行后的輸出結(jié)果是()。

A.1B.2C.3D.4

78.以下關(guān)于邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的敘述中正確的是()。

A.可以是任意合法的表達(dá)式B.只能是整數(shù)0或非0整數(shù)C.可以是結(jié)構(gòu)體類(lèi)型的數(shù)據(jù)D.只能是整數(shù)O或l

79.

80.若a為int類(lèi)型,且其值為3,則執(zhí)行完表達(dá)式a+=a-=a*a后,a的值是()。

A.-3B.9C.-12D.6

五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun()的功能是:將tt所指字符串中的小寫(xiě)字母全部改為對(duì)應(yīng)的大寫(xiě)字母,其他字符不變。例如,若輸入“Ab,cD”,則輸出“AB,CD”。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!試題程序:

六、程序設(shè)計(jì)題(1題)82.請(qǐng)編寫(xiě)函數(shù)proc(),該函數(shù)的功能是:將M行N列的二維數(shù)組中的字符數(shù)據(jù),按列的順序依次放到一個(gè)字符串中。例如,若二維數(shù)組中的數(shù)據(jù)為:

WWW

SSS

HHH

III

則字符串中的內(nèi)容應(yīng)是WSHIWSHIWSHI。

注意:部分源程序給出如下。

請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填人所編寫(xiě)的若干語(yǔ)句。

試題程序:

參考答案

1.A函數(shù)返回值類(lèi)型可以是簡(jiǎn)單類(lèi)型和結(jié)構(gòu)體類(lèi)型。

2.D二叉樹(shù)的遍歷有3種:前序、中序和后序。①前序遍歷訪問(wèn)根結(jié)點(diǎn),然后按左右順序遍歷子結(jié)點(diǎn);②中序首先遍歷左子樹(shù),然后訪問(wèn)根結(jié)點(diǎn),最后遍歷右子樹(shù);③后序遍歷首先遍歷左子樹(shù),然后遍歷右子樹(shù),最后訪問(wèn)根結(jié)點(diǎn)。本題根據(jù)后序和中序遍歷的結(jié)果可以得出二叉樹(shù)的結(jié)構(gòu),然后再對(duì)其進(jìn)行前序遍歷,正確答案選項(xiàng)為D。

3.B

4.D數(shù)據(jù)的邏輯結(jié)構(gòu)是指數(shù)據(jù)元素之間的邏輯關(guān)系的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)則是數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的物理實(shí)現(xiàn),有時(shí)也稱(chēng)作數(shù)據(jù)的物理結(jié)構(gòu)。兩者的區(qū)別是數(shù)據(jù)的邏輯結(jié)構(gòu)只涉及到數(shù)據(jù)之間抽象的數(shù)學(xué)關(guān)系。存儲(chǔ)結(jié)構(gòu)則涉及到如何在計(jì)算機(jī)中通過(guò)對(duì)數(shù)據(jù)的物理存儲(chǔ)進(jìn)行組織來(lái)表達(dá)數(shù)據(jù)元素之間的邏輯關(guān)系。比如在線性表的順序存儲(chǔ)中是利用物理存儲(chǔ)空間上的連續(xù)性來(lái)表達(dá)線性表中數(shù)據(jù)的前后件關(guān)系;在線性表的鏈?zhǔn)酱鎯?chǔ)中是通過(guò)指針域構(gòu)成的邏輯鏈條來(lái)表達(dá)數(shù)據(jù)的前后件關(guān)系。一般的,一種數(shù)據(jù)的邏輯結(jié)構(gòu)對(duì)應(yīng)的物理實(shí)現(xiàn),即數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)不止一種。因此選項(xiàng)D正確。

5.C

6.D在C語(yǔ)言中,有整型常量、實(shí)型常量、字符常量和字符串常量等類(lèi)型。整型常量和實(shí)型常量又稱(chēng)數(shù)值型常量。基本整型常量只能用數(shù)字表示,不帶小數(shù)點(diǎn),例如12、-1和0等,在VC6.0中可以在整型常量的后面加—個(gè)字母l(L的小寫(xiě))或L;實(shí)型常量必須用帶小數(shù)點(diǎn)的數(shù)表示,例如3.14159、-2.71828、0.0等;選項(xiàng)A中字母o不符合要求,選頂B中超出八進(jìn)制的范圍,選項(xiàng)C中e后面的不為整數(shù),因此選頂D是正確的。

7.D

8.D解析:選項(xiàng)A),B),C)的指針賦值表達(dá)方式都不正確,*p=5表達(dá)整數(shù)5放到指針p所指向的存儲(chǔ)單元中。注意:通過(guò)指針引用一個(gè)存儲(chǔ)單。

9.C

10.B本題考查按位異或的用法。按位異或運(yùn)算的規(guī)則是:兩個(gè)運(yùn)算數(shù)的相應(yīng)二進(jìn)制位相同,則結(jié)果為0,相異則結(jié)果為1。b=2的二進(jìn)制為00000010,a=1的二進(jìn)制為00000001,a=a^b=00000011,轉(zhuǎn)化為十進(jìn)制后為3,b=b^a=00000010-00000011=00000001,即1。

11.B[解析]在一個(gè)C語(yǔ)言程序中可以進(jìn)行多種算法的實(shí)現(xiàn),對(duì)算法的個(gè)數(shù)沒(méi)有規(guī)定,所以B)錯(cuò)誤。

12.B執(zhí)行“y--”直到值為0。退出循環(huán)。由于“y--”是后綴自減運(yùn)算,先使用再自減,因此退出循環(huán)時(shí),y的值為-1。故本題答案為B選項(xiàng)。

13.A解析:本題考查C語(yǔ)言的綜合基礎(chǔ)知識(shí)。構(gòu)成C程序的基本單位是函數(shù),一個(gè)C程序總是從main函數(shù)開(kāi)始執(zhí)行,而不論main函數(shù)在整個(gè)程序中的位置如何。C語(yǔ)言的函數(shù)定義都是互相平行、獨(dú)立的,在定義函數(shù)時(shí),一個(gè)函數(shù)內(nèi)不能定義另一個(gè)函數(shù)。C函數(shù)定義的一般格式有兩種:傳統(tǒng)格式和現(xiàn)代格式。傳統(tǒng)格式也稱(chēng)K&R格式,是早期編譯系統(tǒng)使用的格式;現(xiàn)代格式又稱(chēng)ANSI格式,是現(xiàn)代編譯系統(tǒng)使用的格式。

14.D根據(jù)二叉樹(shù)的基本性質(zhì)3:在任意一棵二叉樹(shù)中,度為0的葉子結(jié)點(diǎn)總比度為2的結(jié)點(diǎn)多一個(gè),因此本題中度為2的結(jié)點(diǎn)為l一1=0個(gè),據(jù)此可以知道本題目中的二叉樹(shù)的每一個(gè)結(jié)點(diǎn)都有一個(gè)分支,所以共7個(gè)結(jié)點(diǎn)共7層,即深度為7,選擇D)。

15.D

16.A

17.B解析:二維數(shù)組的元素在內(nèi)存中是按行列順序連續(xù)存放的。以本題的二維數(shù)組a[3][6]為例,它的元素在內(nèi)存中的存放順序是:a[0][0]、a[0][1]、a[0][2]…a[0][5]、a[1][0]、\u3000a[1][1]…a[1][5]、a[2][0]…a[2][5]。由此可見(jiàn),第10個(gè)元素就是第2行第4個(gè)元素,即a[1][3]。故應(yīng)該選擇B。

18.A

19.D關(guān)系R與s經(jīng)交運(yùn)算后所得到的關(guān)系是由那些既在R內(nèi)又在S內(nèi)的共有元組組成的,記為RnS。

20.A

21.33解析:軟件系統(tǒng)結(jié)構(gòu)圖的寬度:整體控制跨度(最大模塊數(shù)的層)的表示。

22.1616解析:滿二叉樹(shù)的葉子結(jié)點(diǎn)都在最后一層,即第4層,且第4層的結(jié)點(diǎn)達(dá)到最大數(shù),即25-1=16。

23.22解析:計(jì)算機(jī)存儲(chǔ)一個(gè)字符用1個(gè)字節(jié),存儲(chǔ)字符串時(shí),每個(gè)字符用占用1個(gè)字節(jié),另在字符串的有效字符之后存儲(chǔ)1個(gè)字符串的結(jié)束標(biāo)記符。所以存儲(chǔ)字符串“X”要占用2個(gè)字節(jié),存儲(chǔ)字符'x'只要1個(gè)字節(jié)。注意:sizeof()函數(shù)和strlen()函數(shù)的作用。

24.CC解析:枚舉的語(yǔ)法規(guī)定,當(dāng)枚舉元素沒(méi)有賦值時(shí),如果前面沒(méi)有其他枚舉元素,其值為0;如果前面有其他枚舉元素,其值為前一個(gè)元素的值加1,所以his的值為5,her的值為15。

25.ASCII碼ASCII碼解析:C語(yǔ)言中,字符也可以進(jìn)行比較運(yùn)算,并且是按照其ASCII碼值進(jìn)行的。

26.前件前件

27.HowdoesheHowdoeshe解析:本題的關(guān)鍵在于表達(dá)式str1+strlen(str1)/2,注意“/”的用法,可得str1+13/2=str1+6。

28.邏輯關(guān)系邏輯關(guān)系

29.11

30.物理物理

31.a=sb=s+1;b-s<sizeof(s)/sizeof(s[0]);b++a=s,b=s+1;b-s<sizeof(s)/sizeof(s[0]);b++解析:題目要求輸出數(shù)組中最大的數(shù),所以要遍歷整個(gè)數(shù)組,而指針a用來(lái)指向最大數(shù),所以循環(huán)變量只有使用指針b。for初始化時(shí),應(yīng)該先讓a指向第1個(gè)數(shù),然后讓b指向第2個(gè)數(shù),故循環(huán)初始化語(yǔ)句應(yīng)該為a=s,b=s+1或其他等價(jià)表達(dá)式。因?yàn)橐筨遍歷整個(gè)數(shù)組,故循環(huán)條件應(yīng)該為b-s<sizeof(s)/sizeof(s[0])或其他等價(jià)表達(dá)式。最后每次循環(huán)應(yīng)該讓b往后移動(dòng)一位,故for的第3條語(yǔ)句應(yīng)該是++b、b++或其他等價(jià)形勢(shì)。所以本題應(yīng)填a=s,b=s+1;b-s<sizeof(s)/sizeof(s[0]);b++或其他等價(jià)語(yǔ)句。

32.int*int*解析:從題中代碼可知:z應(yīng)該是一個(gè)整型指針,因此應(yīng)填int*。

33.2525解析:#NAME?

34.i<10或i<9j%3!=0或j%3i<10或i<9\r\nj%3!=0或j%3解析:程序中的j用于存放符合條件的整數(shù),j=i,10+6;求得個(gè)位數(shù)為6的整數(shù),由此可得出程序的循環(huán)次數(shù)為i<10,所以[15]處填i<10。然后通過(guò)if語(yǔ)句判斷整數(shù)是否能被3整除,若不能則繼續(xù)下一次循環(huán),若能則輸出該整數(shù),所以[16]處填j%3!=0。

35.4545解析:對(duì)于長(zhǎng)度為N的線性表,在最壞情況下(即線性表中元素現(xiàn)在的順序與目標(biāo)順序正好相反),冒泡排序需要經(jīng)過(guò)N/2遍的從前往后的掃描和N/2遍的從后往前的掃描,需要的比較次數(shù)為N(N-1)/2。

36.99解析:在主函數(shù)中函數(shù)f(f(3,4),f(3,5))的返回值賦給d。函數(shù)的第一個(gè)參數(shù)為f(3,4)的返回值,函數(shù)f(3,4)返回值為(4-3)×3=3,f(3,5)返回值為(5-3)×3=6,那么函數(shù)f(f(3,4),f(3,5))等價(jià)于函數(shù)f(3,6)其返回值為(6-3)×3=9。因此d被賦值為9;所以輸出9。

37.1212解析:x=(表達(dá)式1,表達(dá)式2,…)的形式,結(jié)果為最后一個(gè)表達(dá)式的值:x=(a=4,6*2)=2*6=12。

38.21

39.22解析:分析程序,a=2,b=-1,c=2時(shí),if語(yǔ)句的表達(dá)式a<b不成立,不再往下判斷,直接退出if語(yǔ)句,執(zhí)行后面的輸出語(yǔ)句,程序結(jié)束。在這個(gè)程序中a、b、c的值沒(méi)做任何改變。

40.重復(fù)(循環(huán))重復(fù)(循環(huán))解析:結(jié)構(gòu)化程序設(shè)計(jì)包括3種基本的結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和重復(fù)結(jié)構(gòu)(循環(huán)結(jié)構(gòu)),利用這3種結(jié)構(gòu)就足以表達(dá)出各種其他形式結(jié)構(gòu)的程序設(shè)計(jì)方法。其中利用循環(huán)結(jié)構(gòu),可以簡(jiǎn)化大量的程序執(zhí)行。

41.B由于聯(lián)合體是同一存儲(chǔ)區(qū)域由不同類(lèi)型的變量共享,所以不可以直接對(duì)聯(lián)合體變量名進(jìn)行賦值,且聯(lián)合體中的空間在某一時(shí)刻只能保持某一成員的數(shù)據(jù);另外合體中可以出現(xiàn)結(jié)構(gòu)類(lèi)型的成員。

42.B

43.D解析:需求分析常用的工具有數(shù)據(jù)流圖(DFD)、數(shù)據(jù)字典(DD)、判定樹(shù)和判定表。PAD(問(wèn)題分析圖)、PFD(程序流程圖)、N-S(盒式圖)都是詳細(xì)設(shè)計(jì)的常用工具,不是需求分析的工具。

44.A解析:本題考查了二維數(shù)組元素的引用方法。選項(xiàng)A中a+i指向了數(shù)組a的第i+1行,*(a+i)則是第i+1行第0列的地址值,*(a+i)+j指向了數(shù)組a第i+1行,j+1列,*(*(a+i)+j)取到的是數(shù)組a的a[i][j]元素。

45.D

46.C所謂數(shù)據(jù)的邏輯結(jié)構(gòu),是指反映數(shù)據(jù)元素之間邏輯關(guān)系的數(shù)據(jù)結(jié)構(gòu)。\n所謂數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu),是指數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式。與數(shù)據(jù)元素本身的形式、內(nèi)容、相對(duì)位置、個(gè)數(shù)有關(guān)。\n邏輯結(jié)構(gòu)與物理存儲(chǔ)無(wú)關(guān)。因此本題的正確答案為C。

47.B解析:宏定義的作用是進(jìn)行字符的替換,應(yīng)先將賦值語(yǔ)句的右邊進(jìn)行宏替換,即等號(hào)右邊為:k+m*k+m/k+m*k+m=2+1*2+1/2+1*2+1=2+2+0+2+1=7,然后計(jì)算a/=7,即a=a/7=16/7=2。

48.B解析:數(shù)據(jù)庫(kù)產(chǎn)生的背景就是計(jì)算機(jī)的應(yīng)用范圍越來(lái)越廣泛,數(shù)據(jù)量急劇增加,對(duì)數(shù)據(jù)共享的要求越來(lái)越高。共享的含義是多個(gè)用戶(hù)、多種語(yǔ)言、多個(gè)應(yīng)用程序相互覆蓋的使用一些公用的數(shù)據(jù)集合。在這樣的背景下,為了滿足多用戶(hù)、多應(yīng)用共,享數(shù)據(jù)的要求,就出現(xiàn)了數(shù)據(jù)庫(kù)技術(shù),以便對(duì)數(shù)據(jù)庫(kù)進(jìn)行管理。因此,數(shù)據(jù)庫(kù)技術(shù)的根本目標(biāo)就是解決數(shù)據(jù)的共享問(wèn)題。故選項(xiàng)B正確。

49.A解析:選項(xiàng)A)是一個(gè)表達(dá)式,它后面沒(méi)有分號(hào)結(jié)尾(C語(yǔ)言中規(guī)定語(yǔ)句必須以分號(hào)結(jié)束),所以它不是語(yǔ)句;選項(xiàng)B)用一個(gè)花括號(hào)把幾條語(yǔ)句括起來(lái)了,這是一個(gè)復(fù)合語(yǔ)句;選項(xiàng)C)中只有一個(gè)分號(hào),是一個(gè)空語(yǔ)句;選項(xiàng)D)是個(gè)復(fù)合語(yǔ)句,也是一個(gè)空語(yǔ)句。

50.D解析:本題考核的知識(shí)點(diǎn)是二維數(shù)組的定義以及數(shù)組元素初始化。選項(xiàng)A中,數(shù)組的長(zhǎng)度使用了變量N,而在c中是不能用變量來(lái)定義數(shù)組的的長(zhǎng)度的,故選項(xiàng)A錯(cuò)誤。在c語(yǔ)言中,給二維數(shù)組賦初值時(shí),行數(shù)不能超過(guò)定義的行數(shù),每行的初值個(gè)數(shù)不能超過(guò)定義時(shí)的列數(shù),故選項(xiàng)B錯(cuò)誤。選項(xiàng)C數(shù)組的第二維下標(biāo)缺省,而在C中,數(shù)組的第二維下標(biāo)不能缺省,故選項(xiàng)C錯(cuò)誤。所以,D選項(xiàng)為所選。

51.D解析:數(shù)據(jù)的邏輯結(jié)構(gòu)是對(duì)數(shù)據(jù)元素之間的邏輯關(guān)系的描述,它可以用一個(gè)數(shù)據(jù)元素的集合和在此集合中定義的若干關(guān)系來(lái)表示。數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱(chēng)為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)(也稱(chēng)數(shù)據(jù)的物理結(jié)構(gòu))。一種數(shù)據(jù)的邏輯結(jié)構(gòu)根據(jù)需要可以表示成多種存儲(chǔ)結(jié)構(gòu),常用的存儲(chǔ)結(jié)構(gòu)有順序、鏈接等存儲(chǔ)結(jié)構(gòu)。但是不同的存儲(chǔ)結(jié)構(gòu)的數(shù)據(jù)的處理效率不同。

52.C解析:“\\b”格式符表示退格,功能是將它后面的字母把它前面的字母覆蓋,導(dǎo)致“\\b'’格式符前面的字母不能輸出;“\\'”格式符表示輸出單引號(hào)字符;“\\\\”格式符表示輸出反斜線字符。

53.C解析:算法的時(shí)間復(fù)雜度實(shí)際上就是執(zhí)行算法程序所需要的計(jì)算工作量。為了客觀地反映算法性能,在度量算法的時(shí)間復(fù)雜度時(shí),應(yīng)該與編寫(xiě)算法程序所使用的程序設(shè)計(jì)語(yǔ)言、執(zhí)行算法程序時(shí)所使用的計(jì)算的工具以及程序員的水平無(wú)關(guān)。選項(xiàng)A錯(cuò)誤,因?yàn)橥凰惴ǔ绦蛟谶\(yùn)行速度不同的計(jì)算機(jī)上運(yùn)行時(shí),其計(jì)算時(shí)間是不同的。選項(xiàng)B錯(cuò)誤,因?yàn)樗惴ㄋ帉?xiě)的程序長(zhǎng)度往往與程序設(shè)計(jì)語(yǔ)言以及程序員的水平有關(guān),同一個(gè)算法,用不同的程序設(shè)計(jì)語(yǔ)言或者不同的程序員所編寫(xiě)出的程序其長(zhǎng)度可能會(huì)大不相同。選項(xiàng)D錯(cuò)誤,因?yàn)楦鶕?jù)一個(gè)算法所編制出的程序之中,其指令條數(shù)往往與程序設(shè)計(jì)語(yǔ)言以及程序員的水平有關(guān),不能用算法程序中的指令條數(shù)來(lái)度量算法的時(shí)間復(fù)雜度。所以,本題正確答案為C。

54.C解析:C語(yǔ)言是一個(gè)函數(shù)語(yǔ)言,C語(yǔ)言的主體就是一個(gè)主函數(shù),然后有庫(kù)函數(shù)和用戶(hù)自定義的函數(shù)來(lái)配合主函數(shù)完成一系列的任務(wù),所以說(shuō),C語(yǔ)言的基本單位是函數(shù)。

55.A解析:在給p和q數(shù)組賦初值時(shí),系統(tǒng)會(huì)自動(dòng)添加字符串結(jié)束符,從題目中可以看出數(shù)組p和q都有3個(gè)字符,所以長(zhǎng)度均為3。

56.C解析:本題中,“printf('%2d,%2d\\n',x,y)”表示以逗號(hào)隔開(kāi)輸出兩個(gè)十進(jìn)制整數(shù),每個(gè)整數(shù)域?qū)捠?。而在C語(yǔ)言中規(guī)定:當(dāng)域?qū)捫∮趯?shí)際寬度時(shí)域?qū)挷黄鹱饔茫磳?shí)際寬度輸出,因此最后的輸出值為102和10(y的初值012表示八進(jìn)制整數(shù)12,等于十進(jìn)制的10)。所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。

57.A解析:函數(shù)中變量的存儲(chǔ)類(lèi)別包括auto,static,extern,其中auto為隱含存儲(chǔ)類(lèi)別,static為靜態(tài)存儲(chǔ)類(lèi)別,register是寄存器存儲(chǔ)類(lèi)別。

58.C解析:本題考查的是指向函數(shù)的指針。函數(shù)指針定義的基本格式為:類(lèi)型標(biāo)識(shí)符(*指針變量名)()?!邦?lèi)型標(biāo)識(shí)符”為函數(shù)返回值的類(lèi)型。

59.C解析:在這四個(gè)選項(xiàng)中,只有Novell屬于局域網(wǎng),Internet是計(jì)算機(jī)網(wǎng)絡(luò)中最大的網(wǎng)絡(luò)。CERNET和CHINANET都是廣域網(wǎng)。

60.D解析:定義函數(shù)F(x)為void型,即沒(méi)有返回值,而函數(shù)體中又有return語(yǔ)句,編譯時(shí)會(huì)出錯(cuò)。

61.CC語(yǔ)言中,switch語(yǔ)句中的表達(dá)式和case表達(dá)式都不能是浮點(diǎn)類(lèi)型。所以選C。

62.Cstrcpy:字符串拷貝函數(shù);strlen:求字符串長(zhǎng)度函數(shù)(注意:不包含字符串結(jié)束標(biāo)識(shí)符‘、0’);strcat:字符串連接函數(shù)。執(zhí)行完語(yǔ)句strcat(P,r);后,P數(shù)組中存儲(chǔ)的元素為a,b,c,d,a,b,C,d,8;執(zhí)行語(yǔ)句strcpy(P+strlen(q),q);得到的結(jié)果是將q所指向的字符串拷貝至P+strlen(q)開(kāi)始的存儲(chǔ)位置,因?yàn)閟trlen的值為3,即從P+3開(kāi)始存儲(chǔ)q中的元素。所以執(zhí)行完strcpy(P+str|en(q),q)語(yǔ)句后,字符數(shù)組P[20]的存儲(chǔ)元素為a,b,c,a,b,o;所以strlen(P)的結(jié)果為6。因此C選項(xiàng)正確。

63.D

64.CC?!窘馕觥繑?shù)據(jù)結(jié)構(gòu)是相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合?!标P(guān)系”描述的是數(shù)據(jù)元素之間的邏輯關(guān)系,因此又稱(chēng)數(shù)據(jù)的邏輯結(jié)構(gòu)。數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指數(shù)據(jù)結(jié)構(gòu)(數(shù)據(jù)的邏輯結(jié)構(gòu))在計(jì)算機(jī)中的表示,又稱(chēng)物理結(jié)構(gòu)。數(shù)據(jù)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論