2021-2022年甘肅省酒泉市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第1頁(yè)
2021-2022年甘肅省酒泉市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第2頁(yè)
2021-2022年甘肅省酒泉市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第3頁(yè)
2021-2022年甘肅省酒泉市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第4頁(yè)
2021-2022年甘肅省酒泉市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩35頁(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ì)知識(shí)點(diǎn)匯總卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.

2.有以下程序:#include<stdio.h>#include<string.h>main(){charstr[][10]={“One”,“Three”,“Five”},*p=str[0];printf(“%s,”,p+10);printf(“%d\n”,strlen(p+=10));}程序運(yùn)行后的輸出結(jié)果是()。

A.Three,4B.出錯(cuò)C.Three,5D.Five,5

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

A.宏替換不占用程序的運(yùn)行時(shí)間

B.預(yù)處理命令行必須位于源文件的開(kāi)頭

C.在源文件的一行上可以有多條預(yù)處理命令

D.宏名必須用大寫(xiě)字母表示

4.下面合法的C語(yǔ)言字符常量是()。

A.'\t'B."A"C.65D.A

5.有以下程序(strcat函數(shù)用于連接兩個(gè)字符串):#include<stdio.h>#include<string.h>main(){chara[20]=“ABCD\0EFG\0”,b[]=“UK”;strcat(a,b);printf(“%s\n”,a);}程序的運(yùn)行結(jié)果是()。

A.UKB.ABCDE\0FG\0UKC.ABCDUKD.EFGUK

6.

7.在n個(gè)結(jié)點(diǎn)的順序表中,算法的時(shí)間復(fù)雜度是O(1)的操作是()。

A.訪問(wèn)第i個(gè)結(jié)點(diǎn)(1<=i<=n)和求第i個(gè)結(jié)點(diǎn)的直接前驅(qū)(2<=i<=n)

B.在第i個(gè)結(jié)點(diǎn)之后插入一個(gè)新結(jié)點(diǎn)(1<=i<=n)

C.刪除第i個(gè)結(jié)點(diǎn)(1<=i<=n)

D.將n個(gè)結(jié)點(diǎn)從小到大排序

8.

9.在面向?qū)ο蠓椒ㄖ校粋€(gè)對(duì)象請(qǐng)求另一對(duì)象為其服務(wù)的方式是通過(guò)發(fā)送()。A.調(diào)用語(yǔ)句B.命令C.口令D.消息

10.

若輸入“abcdef”“abdef”,下述程序的輸出結(jié)果為()。

#include<stdio.h>

#include<string.h>

main

{intn;

chars1[20],s2[20],*p1,*p2;

scanf("%s",s1);

scanf("%S",s2);

p1=s1;

p2=s2;

n=strcmp(p1,p2);

printf("Vood\n",n);

}

A.-1B.0C."abcdef"D."abdef"

11.有以下程序voidsum(inta[]){a[0]-a[-1]+a[1];}main(){inta[10]={1,2,3,4,5,6,7,8,9,10};sum(&a[2]);printf(“%d\n”,a[2]);}程序運(yùn)行后的輸出結(jié)果是A.6B.7C.5D.8

12.以下程序的運(yùn)行結(jié)果是______。#include<stdio.h>main(){inta[]:{1,2,3,4,5,6,7,8,9,10,11,12):int*p=a+5,*q=NULL:*q=*(p+5):printf("%d%d\n",*p,*q);}

A.運(yùn)行后報(bào)錯(cuò)B.66C.612D.55

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

A.在C程序中,每行中只能寫(xiě)一條語(yǔ)句

B.若a是實(shí)型變量,C程序中允許賦值a=10,因此實(shí)型變量中允許存放整型數(shù)

C.在C程序中,無(wú)論是整數(shù)還是實(shí)數(shù),都能被準(zhǔn)確無(wú)誤地表示

D.在C程序中,%是只能用于整數(shù)運(yùn)算的運(yùn)算符

14.sizeof(float)是()。

A.一種函數(shù)調(diào)用B.一種函數(shù)定義C.一個(gè)浮點(diǎn)表達(dá)式D.一個(gè)整型表達(dá)式

15.若有定義語(yǔ)句:“intx=12,y=8,z;”,在其后執(zhí)行語(yǔ)句“z=0.9+x/y;”,則z的值為()。A.1.9B.1C.2D.2.4

16.有以下程序:#include<stdio.h>intfun(){staticintx=1;x*=2;returnx;}main(){inti,s=1;for(i=1;i<=3;i++)s*=fun();printf(“%d\n”,s);}程序的運(yùn)行結(jié)果是()。

A.10B.30C.0D.64

17.由3個(gè)結(jié)點(diǎn)可以構(gòu)造出______種不同形態(tài)的二叉樹(shù)。

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

18.第

24

下面程序段的運(yùn)行結(jié)果是

char*p="abcdefgh";

p+=3;

printf("%d\n",strlen(strcpy(p,"ABCD")));

A.8B.12C.4D.7

19.設(shè)有以下程序段:structMP3{charname[20];charcolor;floatprice;}std,*ptr;ptr=&std:若要引用結(jié)構(gòu)體變量std中的color成員,寫(xiě)法錯(cuò)誤的是()。A.std.colorB.ptr->colorC.std->colorD.(*ptr)color

20.下面程序輸出的是()。main{intt=l;fun(fun(t));}fun(inth){staticinta[3]={1.2.3};intk;for(k=0;k<3;k++)a[k]+=a[k]-h;for(k=0;k<3;k++)printf("%d",a[k]);printf("\n");return(a[h]);}A.1,2,3,1,5,9,B.1,3,5,1,3,7,C.1,3,5,0,4,8,D.1,3,5,-1,3,7,

二、2.填空題(20題)21.以下程序輸出的結(jié)果是【】。

main()

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

d=(a>b>c);

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

}

22.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱(chēng)為()。

23.已知bead指向一個(gè)帶頭結(jié)點(diǎn)的單向鏈表,鏈表中每個(gè)結(jié)點(diǎn)包含數(shù)據(jù)域(data)和指針域(next),數(shù)據(jù)域?yàn)檎?。以下函?shù)求出鏈表中所有連接點(diǎn)數(shù)據(jù)域的和值作為函數(shù)值返回。請(qǐng)?jiān)跈M線處填入正確內(nèi)容。

{intdata;structlink*next;}

main()

{structlink*head;

sam(______);

{stmctlink*p;ints=0;

p=head->next;

while(p){s+=p->data;p=p->next;}

return(s);}

24.設(shè)有定義:intn,*k=&n;以下語(yǔ)句將利用指針變量k讀寫(xiě)變量n中的內(nèi)容,請(qǐng)將語(yǔ)句補(bǔ)充家整。

seanf("%d",【】);

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

25.在對(duì)文件操作的過(guò)程中,若要求文件的位置指針回到文件的開(kāi)始處,應(yīng)當(dāng)調(diào)用的函數(shù)是【】。

26.設(shè)有下列宏定義:#defineA2

#defineBA+3

則執(zhí)行賦值語(yǔ)句;t=B*2;t為int型變量后的值是______。

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

voidfun()

{staticinta=0;

a+=2;printf("%d",a);

}

main()

{intcc;

for(cc=1;cc<4;cc++)fun();

printf("\n");

}

28.以下程序段的功能是統(tǒng)計(jì)鏈表中結(jié)點(diǎn)的個(gè)數(shù),其中first為指向第一個(gè)結(jié)點(diǎn)的指針(鏈表帶頭結(jié)點(diǎn))。請(qǐng)?jiān)谙聞澗€內(nèi)填入正確內(nèi)容。

structlink

{chardata;

structlink*next;};

structlink*p,*first;

intc=0;

p=first;

while(【】)

{c++;

p=【】;}

29.以下程序是求矩陣a、b的和,結(jié)果存入矩陣c中,請(qǐng)?zhí)羁铡?include<stdio.h>main(){inta[4][4]={1,2,6,7},{0,4,2,-8},{1,4,5,2},{2,4,6,8}};intb[4][4]={{-4,0,7,9},{2,-7,7,4),{6,9,0,1),{8,8,6,5)};inti,j,c[4][4];for(i=0;i<4;i++)for(j=0;j<4;j++)c[i][j]=();for(i=0;i<4;i++)for(j=0;j<4;j++)printf("%d",c[i][j]);}

30.以下程序的功能是根據(jù)輸入的"y"("Y")與"n"("N"),在屏幕上分別顯示出"ThisisYES."與"ThisisNO."??瞻滋幮枰钊氲膬?nèi)容是

#include<stdio.h>

voidYesNo(charch)

{switch(ch)

{case′y′:

case′Y′:printf("\nThisisYES.\n");

case′n′:

case′N(xiāo)′:printf("\nThisisNO.\n");}

main()

{charch;

printf("\nEnterachary,Yorn,N:");

ch=【】;

printf("ch;%c",ch);

YesNo(ch);}

31.若有如下程序:

main()

{intx=4;y=3,Z=2,t;

t=x<y<z;

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

}

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

32.下列表達(dá)式用于判斷y是否為閏年。閏年的判斷條件是:年號(hào)能被4整除但不能被100整除或年號(hào)能被400整除,請(qǐng)?zhí)羁誣_____。

33.在面向?qū)ο蠓椒ㄖ?,【】描述的是具有相似屬性與操作的一組對(duì)象。

34.下面程序的功能是:計(jì)算1~10之間的奇數(shù)之和與偶數(shù)之和,請(qǐng)?zhí)羁铡?/p>

#include<stdio.h>

main()

{inta,b,c,i;

a=c=0;

for(i=0;i<=10;i+=2)

{a+=i;

【】;

c+=b;}

printf("偶數(shù)之和=%d\n",a);

printf("奇數(shù)之和=%d\n",c-11);}

35.數(shù)據(jù)庫(kù)保護(hù)分為:安全性控制、______、并發(fā)性控制和數(shù)據(jù)的恢復(fù)。

36.設(shè)x、y、z為整型變量,且x=2,y=3,z=4,當(dāng)執(zhí)行以下語(yǔ)句后,x的值是______。

x*=(y++)+(--z);

37.數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程經(jīng)過(guò)人工管理、文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)三個(gè)階段,其中數(shù)據(jù)獨(dú)立性最高的階段是【】。

38.下面函數(shù)的功能是將一個(gè)字符串的內(nèi)容顛倒過(guò)來(lái),請(qǐng)?zhí)羁铡?/p>

voidfun(charstr[])

{inti,j,k;

for(i=0,j=【】;i<j;i++,j--)

{k=str[i];

str[i]=str[j];

str[j]=k;}}

39.以下程序段的輸出結(jié)果是【】。

inti=9;

prinff("%o\n",i);

40.在宏定義#definePI3.14159中,用宏名PI代替一個(gè)______。

三、1.選擇題(20題)41.若定義inta=10,則表達(dá)式a+=a-=a*=a的值是()。

A.0B.-180C.-100D.-90

42.從一個(gè)長(zhǎng)度為n的順序表中刪除第i個(gè)元素(1≤i≤n)時(shí),需向前移動(dòng)______個(gè)元素。

A.n-iB.n-i+1C.n-i-1D.i

43.若有下列說(shuō)明,則()不是對(duì)strcpy庫(kù)函數(shù)的正確的調(diào)用。strcpy庫(kù)函數(shù)用于復(fù)制一個(gè)字符串:char*str1="abcdt",str2[10],*str3="hijklmn",*str4[2],*str5="aaaa";

A.strcpy(str2,str1)

B.strcpy(str3,str1)

C.strcpy(str4,str1)

D.strcpy(str5,str1)

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

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

45.用C語(yǔ)言編寫(xiě)的代碼程序

A.可立即執(zhí)行B.是一個(gè)源程序C.經(jīng)過(guò)編譯即可執(zhí)行D.經(jīng)過(guò)編譯解釋即可執(zhí)行

46.數(shù)據(jù)庫(kù)DB、數(shù)據(jù)庫(kù)系統(tǒng)DBS、數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS之間的關(guān)系是()。

A.DB包括DBS和DBMSB.DBMS包括DB和DBSC.DBS包括DB和DBMSD.沒(méi)有任何關(guān)系

47.下列能正確定義一維數(shù)組的選項(xiàng)是()。

A.inta[5]={0,1,2,3,4,5}

B.chara[]={0,1,2,3,4,5};

C.chara={'A','B','C'};

D.inta[5]="0123";

48.以下能正確定義二維數(shù)組的是______。

A.inta[][3];

B.inta[][3]={2*3};

C.inta[][3]={};

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

49.有以下結(jié)構(gòu)體說(shuō)明和變量定義,如圖所示,指針p、q、r,分別指向此鏈表中的3個(gè)連續(xù)結(jié)點(diǎn)。Structnode{intdata;Structnode*hext;}*p,*q,

*r;

現(xiàn)要將Q所指結(jié)點(diǎn)從鏈表中刪除,同時(shí)要保持鏈表的連續(xù),以下不能完成指定操作的語(yǔ)句是

A.p->next=q->next;

B.p->next=p->next->next;

C.p->next=r;

D.p=q->next;

50.有以下函數(shù):fun(char*a,char*b){while((*a!='\0')&&(*b!:'\0')&&(*a==*b)){a++;b++;}return(*a-*b);}該函數(shù)的功能是()。

A.將b所指字符串連接到a所指字符串中

B.計(jì)算a和b所指字符串的長(zhǎng)度之差

C.將b所指字符串連接到a所指字符串后面

D.比較a和b所指字符串的大小

51.有以下程序voidswapl(intc[]){intt;t=c[0];c[0]=c[1];c[1]=t;}voidswap2(intc0,intc1){intt;t=c0;c0=c1;c1=t;}main(){inta[2]={3,5},b[2]={3,5};swapl(a);swap2(b[0],b[1]);printf("%d%d%d%d\n",a[0],a[1],b[0],b[1]);}其輸出結(jié)果是:

A.5353B.5335C.3535D.3553

52.有以下程序:main(){intm=12,n=34;printf("%d%d",m++,++n);printf("%d%d\n",n++,++m);}程序運(yùn)行后的輸出結(jié)果是______。

A.12353514B.12353513C.12343514D.12343513

53.以下語(yǔ)句或語(yǔ)句組中,能正確進(jìn)行字符串賦值的是______。A.char*sp;*sp="right!";

B.chars[10];s="right!";

C.chars[10];*s="right!";

D.char*sp="right!";

54.下列程序的輸出結(jié)果是______。#defineA100main(){inti=0,sum=0;do{if(i==(i/2)*2)continue;sum+=i;}while(++i<A);printf("%d\n",sum);}

A.2500B.2050C.4D.0

55.已知二叉樹(shù)后序遍歷序列是dabec,中序遍歷序列是debac,它的前序遍歷序列是

A.acbedB.decabC.deabcD.cedba

56.設(shè)棧S初始狀態(tài)為空。元素a、b、c、d、e、f依次通過(guò)棧S,若出棧的順序?yàn)閏、f、e、d、b、a,則棧S的容量至少應(yīng)該為()。

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

57.若有以下定義,則對(duì)a數(shù)組元素地址的正確引用是()。

inta[5],*p=a;A.A.p5B.*a1C.&a1D.&a[0]

58.以下程序的輸出是______。structst{intx;int*y;}*p;intdt[4]={10,20,30,40};structstaa[4]={50,&dt[0],60,&dt[1],60,&dt[2],60,&dt[3]};main(){p=aa;printf("%d\n",++(p->X));}

A.51B.11C.50D.60

59.有以下程序main(){inti;for(i=0;i<3;i++)switch(i){case1:printf("%d",i);case2:printf("%d",i);default:printf("%d",i);}執(zhí)行扣輸出的結(jié)果是

A.11122B.12C.12020D.120

60.若有說(shuō)明inta[][3]={1,2,3,4,5,6,7,8,9},則a數(shù)組第一維的大小是()。

A.2B.3C.4D.無(wú)確定值

四、選擇題(20題)61.

62.交換兩個(gè)變量的值,不允許用臨時(shí)變量,應(yīng)該使用下列()位運(yùn)算符。

A.&B.^C.D.E.F.~

63.下面結(jié)構(gòu)體的定義語(yǔ)句中,錯(cuò)誤的是()。

A.structord{intx;intY;intz;}structorda;

B.structord{intx;imY;imz;};structorda;

C.structord{intx;intY;intZ;}a;

D.struct{intx;intY;intz;}a;

64.C語(yǔ)言可執(zhí)行程序的開(kāi)始執(zhí)行點(diǎn)是()。

A.包含文件中的第一個(gè)函數(shù)B.程序中第一個(gè)函數(shù)C.程序中的main()函數(shù)D.程序中第一條語(yǔ)句

65.有以下程序:

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

A.*2*6B.}3*5一C.}5D.*7

66.閱讀以下程序:

#include<stdio.h>

main()

{intcase;floatprintF;

printf("請(qǐng)輸人2個(gè)數(shù):");

scanf("%d%fl"&case,&printF);

printf("%dofof\n",case,printF);

}

該程序在編譯時(shí)產(chǎn)生錯(cuò)誤,其出錯(cuò)原因是()。

A.定義語(yǔ)句出錯(cuò),case是關(guān)鍵字,不能用做用戶(hù)自定義標(biāo)識(shí)符

B.定義語(yǔ)句出錯(cuò),printF不能用做用戶(hù)自定義標(biāo)識(shí)符

C.定義語(yǔ)句無(wú)錯(cuò),scanf不能作為輸入函數(shù)使用

D.定義語(yǔ)句無(wú)錯(cuò),printf不能輸出case的值

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

68.

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

#include<stdio.h>

main

{inti;

for(i=l;i<=10;i++)

{if(i*i>=20)&&(i*i<=100))

break;

}

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

}

A.49B.36C.25D.64

69.

70.下面概念中,不屬于面向?qū)ο蠓椒ǖ氖?)。A.對(duì)象B.繼承C.類(lèi)D.過(guò)程調(diào)用

71.

72.在結(jié)構(gòu)化分析方法中,數(shù)據(jù)字典的作用是()。

A.存放所有需要處理的原始數(shù)據(jù)

B.存放所有處理的結(jié)果

C.存放所有程序文件

D.描述系統(tǒng)中所用到的全部數(shù)據(jù)和文件的有關(guān)信息

73.

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

main

{inti,k,a[10],p[3];

k=5;

for(i=0:i<10;i++)a[i]=i;

for(i=0;i<3;i++)p[i]=a[i*(i+1)];

for(i=0;i<3;i++)k+=p[i]*2;

printf("%d\n",k、;

}

A.20B.21C.22D.23

74.(22)下列關(guān)于棧的敘述中正確的是()

A.在棧中只能插入數(shù)據(jù)

B.在棧中只能刪除數(shù)據(jù)

C.棧是先進(jìn)先出的線性表

D.棧是先進(jìn)后出的線性表

75.若有定義:doublea=22;inti=0,k=18;,則不符合c語(yǔ)言規(guī)定的賦值語(yǔ)句是()。

A.i=(a+k)<=(i+k);B.i=a%11;C.a=a++,i++;D.i=!a;

76.有以下程序

77.

78.下列數(shù)據(jù)模型中,具有堅(jiān)實(shí)理論基礎(chǔ)的是()。

A.層次模型B.網(wǎng)狀模型C.關(guān)系模型D.以上3個(gè)都是

79.有以下程序

80.

五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc的功能是:讀入一個(gè)字符串(長(zhǎng)度<20),將該字符串中的所有字符按ASCII碼升序排序后輸出。例如,輸入opdye,則應(yīng)輸出deopy。請(qǐng)修改程序中的錯(cuò)誤,使它能得到正確結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:#include<string.h>#include<stdlib.h>#include<conio.h>#include<stdio.h>//****found****intproc(charstr[]){charc;unsignedi,j;for(i=0;i<strlen(str)-1;i++)for(j=i+1;j<strlen(str);j++)if(str[i]>str[j]){c=str[j]://****found****str[j]=str[i++];str[i]=c;}}voidmain{charstr[81];system("CLS");printf("\nPleaseenteracharacterstring:");gets(str);printf("\n\nBeforesorting:\n%s",str);proc(str);printf("\nAftersortingdecendingly:\n%s",str);}

六、程序設(shè)計(jì)題(1題)82.編寫(xiě)函數(shù)fun,其功能是:實(shí)現(xiàn)兩個(gè)字符串的連接(不要使用庫(kù)函數(shù)strcat),即把p2所指的字符串連接到

pl所指的字符串的后面。

例如,分別輸入下面兩個(gè)字符串:

程序輸出:

注意:部分源程序在文件PROGl.C中。

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

參考答案

1.C

2.Cmain函數(shù)定義一個(gè)二維字符數(shù)組str,它包含3個(gè)字符串,每個(gè)字符串存放在一個(gè)長(zhǎng)度為10的一維數(shù)組中。指針變量P指向str[0],即第1個(gè)字符串“One”。由于“One”存放在長(zhǎng)度為10的一維數(shù)組中,因此P+10指向下一個(gè)字符串“Three”,長(zhǎng)度為5。故本題答案為C選項(xiàng)。

3.A宏替換是在編譯階段前的預(yù)處理階段,對(duì)程序中的宏完成文本替換,因此宏替換不占用運(yùn)行時(shí)間,選項(xiàng)A正確;預(yù)處理命令行無(wú)須在源文件的開(kāi)頭,它可以出現(xiàn)在程序的任何一行的開(kāi)始部位,其作用一直持續(xù)到源文件的末尾,選項(xiàng)B錯(cuò)誤;在源文件的一行上至多只能有一條預(yù)處理命令,選項(xiàng)C錯(cuò)誤;宏名通常使用大寫(xiě)字母表示,這并不是語(yǔ)法規(guī)定,只是一種習(xí)慣,選項(xiàng)D錯(cuò)誤。本題答案為A選項(xiàng)。

4.A

5.C字符數(shù)組a中包含兩個(gè)‘\\0’。遇到第1個(gè)‘\\0’時(shí)就表示字符串a(chǎn)結(jié)束。字符串處理函數(shù)strcat(字符數(shù)組a,字符數(shù)組b),功能是連接兩個(gè)字符串,把字符串b連接到字符串a(chǎn)的后面,結(jié)果放在字符數(shù)組a中。連接時(shí)將字符串a(chǎn)后的‘\\0’取消,只在新串最后保留一個(gè)‘\\0’。本題相當(dāng)于將“ABCD”和“IJK”連接。故本題答案為C選項(xiàng)。

6.A

7.A

8.D

9.D解析:面向?qū)ο蟮氖澜缡峭ㄟ^(guò)對(duì)象與對(duì)象間彼此的相互合作來(lái)推動(dòng)的,對(duì)象間的這種相互合作需要一個(gè)機(jī)制協(xié)助進(jìn)行,這樣的機(jī)制稱(chēng)為消息。消息是一個(gè)實(shí)例與另一個(gè)實(shí)例之間傳遞的信息,它請(qǐng)求對(duì)象執(zhí)行某一處理或回答某一要求的信息,它統(tǒng)一了數(shù)據(jù)流和控制流。

10.D

\n本題考查字符串比較函數(shù)strcmp(s1,s2),若s1>s2,則返回1;若s1=s2,則返回0;若s1<s2,則返回-1。字符串依次比較的是它們字符的ASCIl碼值。

\n

11.A本題考查的是數(shù)組和函數(shù)。sum()函數(shù)接收一個(gè)int型數(shù)組作參數(shù),也可以把它看作是一個(gè)int型指針,語(yǔ)句a[0]=a[*1)+a(比的意思就是將參數(shù)指針指向內(nèi)容的前一個(gè)元素和后一個(gè)元素的值相加放到指針?biāo)傅奈恢茫虼?,主函?shù)中調(diào)用sum(&a[2]);的意思就是讓a[2]=a[1]+a[3];,所以最后輸出的結(jié)果是6。應(yīng)該選擇A。

12.A

13.D

14.D解析:sizeof(float)是c語(yǔ)言?xún)?nèi)部規(guī)定的用于計(jì)算單精度型變量(float)在計(jì)算機(jī)的內(nèi)存中所占用的字節(jié)數(shù)量的函數(shù),返回一個(gè)整數(shù)值。

15.B此題考查除法運(yùn)算,根據(jù)先乘除后加減,有括號(hào)先算括號(hào)的原則,先計(jì)算x/y,即l2/8=1,所以z=0.9+1=1.9。但是Z是整型的,轉(zhuǎn)化一下取整除部分,結(jié)果Z=1

16.D本題中靜態(tài)局部變量X,在靜態(tài)存儲(chǔ)區(qū)內(nèi)分配存儲(chǔ)單元,在程序整個(gè)運(yùn)行期間都不釋放。在main函數(shù)中,執(zhí)行for循環(huán),第1次循環(huán),變量s的值為2;第2次循環(huán),函數(shù)的返回值為4,所以變量s的值為8;第3次循環(huán),函數(shù)的返回值為8,所以s的值為64。故本題答案為D選項(xiàng)。

17.C難易程度:易

18.C在本題中,程序段首先定義了字符型指針變量p,并使其指向一個(gè)字符串,然后將指針變量p加3,即使其指向字符串的第四個(gè)元素。然后執(zhí)行輸出語(yǔ)句,通過(guò)輸出語(yǔ)句的輸出格式我們可以知道,最后輸出的是一個(gè)十進(jìn)制數(shù)的整型數(shù)值,其輸出列表為strlen(strcpy(P,″ABCD″))。這就要求我們了解strlen函數(shù)和strcpy函數(shù)的作用。

strcpy的調(diào)用格式是:strcpy(目的地址,源地址),其功能是把源地址的字符串復(fù)制到目的地址中,這種復(fù)制將覆蓋原來(lái)的字符串。strcat函數(shù)的功能是將源地址的字符串復(fù)制到目的地址字符串的后面。

strlen的調(diào)用格式是:strlen(字符串地址),其功能是返回字符串中字符的個(gè)數(shù)。

那么程序中執(zhí)行strcpy(P,″ABCD″)后指針變量p所指向的字符串為“ABCD”,該字符串中字符的個(gè)數(shù)為4,那么執(zhí)行strlen后,程序最終輸出的結(jié)果是4。因此本題正確的答案是C。

19.C【答案】C

【知識(shí)點(diǎn)】結(jié)構(gòu)體成員變量的引用

【解析】結(jié)構(gòu)體變量包括一個(gè)或多個(gè)成員變量,引用其成員變量的語(yǔ)法格式如下:

結(jié)構(gòu)體變量.成員變量。通過(guò)結(jié)構(gòu)體指針變量獲得其結(jié)構(gòu)體變量的成員變量的一般形式為:(*結(jié)構(gòu)體指針變量).成員變量,也可以使用:結(jié)構(gòu)體指針變量->成員變量來(lái)引用成員變量。

20.D本題考查雙重函數(shù)調(diào)用及for循環(huán)使用,fun函數(shù)中第一個(gè)for循環(huán)語(yǔ)句的作用是給數(shù)組a賦值。當(dāng)?shù)谝淮握{(diào)用fun函數(shù)時(shí),把實(shí)參1傳給形參,輸出a數(shù)組的元素為1,3,5;第二次調(diào)用fun函數(shù)時(shí),由于數(shù)組a為靜態(tài)局部變量,故輸出a數(shù)組的元素為一1,3,7。

21.00解析:本題的關(guān)鍵在于對(duì)變量c的賦值運(yùn)算:

d=(a>b>c)

d=(5>4>3)

先算5>4,為真,得1,即:d=(1>3),此時(shí)1>3,為假,得0。

22.軟件生命周期軟件生命周期解析:軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程稱(chēng)為軟件生命周期。在國(guó)家標(biāo)準(zhǔn)“計(jì)算機(jī)軟件開(kāi)發(fā)規(guī)范”中,把軟件生命周期劃分為8個(gè)階段,即可行性研究與計(jì)劃、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、實(shí)現(xiàn)、綜合測(cè)試、確認(rèn)測(cè)試、使用與維護(hù),對(duì)每個(gè)階段,都明確規(guī)定了該階段的任務(wù)、實(shí)施方法、實(shí)施步驟和完成標(biāo)志,其中特別規(guī)定了每個(gè)階段需要產(chǎn)生的文檔。

23.

24.k[7]*kk[7]*k解析:scanf()函數(shù)有兩個(gè)參數(shù),第—個(gè)參數(shù)是格式控制部分(格式控制部分是字符串,主要由“%”號(hào)和格式字符組成)第二個(gè)參數(shù)是一地址列表(地址列表是由多個(gè)地址組成,可以是變量的地址,也可以是字符串的首地址)。而第一個(gè)空格處位于scanf()函數(shù)的第二個(gè)參數(shù)處,所以,第一個(gè)空應(yīng)該填地址k。printf()函數(shù)有兩個(gè)參數(shù),第一個(gè)參數(shù)是輸出格式字符串(輸出格式字符串是由控制輸出格式的字符和非格式字符組成的,通常是字符常量。非格式字符作為輸出數(shù)據(jù)的間隔,輸出時(shí)原樣輸出)第二個(gè)參數(shù)為一輸出表達(dá)式表(輸出表達(dá)式表是由若干個(gè)需要計(jì)算和輸出的表達(dá)式組成的,表達(dá)式之間用逗號(hào)分隔開(kāi))。而第二個(gè)空位于printf()函數(shù)的第二個(gè)參數(shù)處,所以應(yīng)該填*K。

25.rewind()或fseek()rewind()或fseek()

26.88解析:本題考查帶參數(shù)的宏定義及相關(guān)運(yùn)算.運(yùn)算過(guò)程為:t=B*2=A+3*2=2+3*2=8。

27.246

28.p!=NULLp->nextp!=NULL\r\np->next解析:結(jié)構(gòu)體變量構(gòu)成鏈表需要每個(gè)節(jié)點(diǎn)中都有一個(gè)指向下一個(gè)結(jié)點(diǎn)的指針,就像本題中的next指針一樣。注意:掌握可以對(duì)鏈表進(jìn)行的操作。

29.a[i][j]+b[i][j]a[i][j]+b[i][j]解析:求兩個(gè)矩陣的和只要將對(duì)應(yīng)元素相加即可。

30.getchargetchar解析:考查了字符可以作為整型變量來(lái)對(duì)待,參與操作。題中要求根據(jù)輸入的字符調(diào)用函數(shù)YesNo來(lái)判斷輸入的字符是y(Y)還是n(N),字符的輸入可用字符輸入函數(shù)getchar。函數(shù)YesNo用來(lái)判斷一個(gè)字符是y(Y)還是n(N),主要用了一個(gè)switch多分支結(jié)構(gòu)來(lái)比較輸入字符與字符\ue008'y',\ue009'Y'、,'n','N'是否相等來(lái)實(shí)現(xiàn)的。

31.11解析:因?yàn)閤=4,y=3,所以表達(dá)式x<y的值為假(0),又因?yàn)閦=2,所以0<z的值為真(1),故最終輸出的結(jié)果為1。

32.(y%4==0)&&(y%100!=0)||(y%400==0)(y%4==0)&&(y%100!=0)||(y%400==0)解析:考查邏輯表達(dá)。年號(hào)能被4整除(y%4==0)但不能被100整除(y%100!=0),兩者是與的關(guān)系,年號(hào)能被400整除即y%400==0,與前兩項(xiàng)是或的關(guān)系。

33.類(lèi)類(lèi)解析:在面向?qū)ο蠓椒ㄖ?,?lèi)描述的是具有相似屬性與操作的一組對(duì)象。

34.b=i+1b=i+1解析:本題考查了for循環(huán)語(yǔ)句的執(zhí)行過(guò)程。i+=2是修正表達(dá)式,執(zhí)行一次循環(huán)體后i的值就增加2,i的初始值為0,每次加2之后和累加至a,所以a的值就是1~10之間的偶數(shù)之后;b的值是1~11之間的奇數(shù)和,但在輸出b值時(shí)c去掉多加的11,即為1~10之間的奇數(shù)之和。

35.完整性控制完整性控制

36.12。12。解析:表達(dá)式x*=(y++)+(--z)相當(dāng)于先進(jìn)行z的自減運(yùn)算,再執(zhí)行x=x*(y+z),最后y自加。因此,變量x的值為12,y和z的值分別是4和3。

37.數(shù)據(jù)庫(kù)系統(tǒng)階段數(shù)據(jù)庫(kù)系統(tǒng)階段解析:在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段,其中數(shù)據(jù)獨(dú)立性最高的階段是數(shù)據(jù)庫(kù)系統(tǒng)階段。

38.strlen(str)-1strlen(str)-1解析:程序中的for循環(huán)就是用來(lái)完成串反序的,所以應(yīng)該對(duì)循環(huán)的條件進(jìn)行初始化,所以在[18]應(yīng)該填入strlen(str)-1。注意,在串反序的時(shí)候,不應(yīng)該把串結(jié)束符‘\\0’也反序。

39.1111解析:格式字符。是以八進(jìn)制無(wú)符號(hào)形式輸出整數(shù)(不輸出前導(dǎo)符0),因?yàn)檎麛?shù)9的八進(jìn)制為11,所以輸出結(jié)果為11。

40.字符串字符串解析:本題考查字符替換格式:#define標(biāo)識(shí)符字符串。

41.B解析:算術(shù)運(yùn)算符的運(yùn)算規(guī)則是:從右到左的原則。所以表達(dá)式中先計(jì)算a=a-a*(上標(biāo))a的值是-90,再計(jì)算a=a+a的值是-180。

42.A

43.C解析:strcpy(s1,s2)函數(shù)的功能是將字符串s2復(fù)制到字符串s1中(注意:要保證s1存儲(chǔ)區(qū)能容納下s2字符串)。

44.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。

45.B解析:C語(yǔ)言一種高級(jí)語(yǔ)言,C語(yǔ)言源程序經(jīng)過(guò)C語(yǔ)言編譯程序編譯之后,生成一個(gè)后綴為。OBJ的二進(jìn)制文件(稱(chēng)為目標(biāo)文件),最后還要由稱(chēng)為“連接程序”(Link)的軟件,把此。OBJ文件與C語(yǔ)言提供的各種庫(kù)函數(shù)連接在一起,生成一個(gè)后綴.EXE的可執(zhí)行文件。顯然C語(yǔ)言不能立即執(zhí)行,故選項(xiàng)A錯(cuò)誤;根據(jù)以上定義,選項(xiàng)C和選項(xiàng)D錯(cuò)誤,所以,4個(gè)選項(xiàng)中選項(xiàng)B符合題意。

46.CC?!窘馕觥繑?shù)據(jù)庫(kù)系統(tǒng)(DBS)由數(shù)據(jù)庫(kù)(DBS)、數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)、數(shù)據(jù)庫(kù)管理員、硬件平臺(tái)和軟件平臺(tái)五個(gè)部分組成,可見(jiàn)DB和DBMS都是DBS的組成部分。

47.B解析:在定義數(shù)組時(shí),如果賦給的初始值個(gè)數(shù)大于數(shù)值的長(zhǎng)度,這樣就會(huì)越界,因此選項(xiàng)A)錯(cuò)誤;選項(xiàng)C)中定義的是一個(gè)字符變量C;選項(xiàng)D)中整型數(shù)組,中只能存儲(chǔ)整型數(shù)據(jù),而不能存儲(chǔ)字符串常量“0123”。

48.B解析:(1)二維數(shù)組的定義

二維數(shù)組的定義方式為:類(lèi)型說(shuō)明符數(shù)組名[常量表達(dá)式][常量表達(dá)式]。

二維數(shù)組在內(nèi)存中是按行優(yōu)先的順序存放的,即先存放第一行的元素,再存放第二行的元素,依次類(lèi)推。

(2)二維數(shù)組元素的引用

二維數(shù)組元素的表示形式為:數(shù)組名[下標(biāo)][下標(biāo)],下標(biāo)可以是整型常量或整型表達(dá)式;其范圍為:0~(常量表達(dá)式-1)。

(3)二維數(shù)組的初始化

可以用以下方法對(duì)二維數(shù)組元素初始化。

①分行給二維數(shù)組賦初值,例如;

inta[2][2]=({1,2),{3,4));

這種賦值方式比較直觀,把第1個(gè)大括號(hào)內(nèi)的數(shù)據(jù)賦給第1行的元素,第2個(gè)大括號(hào)內(nèi)的數(shù)據(jù)賦給第2行的元素,即按行賦值。

②可以將所有數(shù)據(jù)寫(xiě)在一個(gè)大括號(hào)內(nèi),按數(shù)組排列的順序?qū)Ω鱾€(gè)元素賦初值。

③可以對(duì)部分元素賦初值,沒(méi)有初始化的元素值為0。

④如果對(duì)全部數(shù)組元素賦初值,則定義數(shù)組時(shí)對(duì)第一維的長(zhǎng)度可以不指定,但第二維的長(zhǎng)度不能省略。

49.D解析:要?jiǎng)h除鏈表中間的某個(gè)結(jié)點(diǎn),只需要使它的前一個(gè)結(jié)點(diǎn)的next指針指向它的后一個(gè)結(jié)點(diǎn)-不過(guò),嚴(yán)格來(lái)講還需要使用free()函數(shù)釋放掉該結(jié)點(diǎn)在內(nèi)存中所占的空間。本題要?jiǎng)h除的是q所指結(jié)點(diǎn)(以下簡(jiǎn)稱(chēng)q結(jié)點(diǎn)),只需使p結(jié)點(diǎn)的next指針指向r結(jié)點(diǎn)即可。選項(xiàng)A中,因?yàn)镼結(jié)點(diǎn)的next指向r結(jié)點(diǎn),所以執(zhí)行p->next=q->next;語(yǔ)句后p結(jié)點(diǎn)的next就指向了r結(jié)點(diǎn),故選項(xiàng)A能完成刪除。選項(xiàng)B中,p->next->next等價(jià)于q->next,因此也能完成刪除。選項(xiàng)C直接讓p->next指向r結(jié)點(diǎn),當(dāng)然可以刪除。選項(xiàng)D使指針p指向q->next(即r結(jié)點(diǎn)),這樣做不會(huì)影響到內(nèi)存中的鏈表,所以應(yīng)該選擇D。

50.D解析:兩個(gè)字符串的比較是從左至右對(duì)兩個(gè)字符串對(duì)應(yīng)位置上的字符逐個(gè)進(jìn)行比較,即按其ASCII碼值的大小比較,直到出現(xiàn)不同的字符或遇到,'\\0'為止。若全部字符都相同,則兩個(gè)字符串相等,返回0;若出現(xiàn)不相同的字符,則返回第一個(gè)不相等字符的ASCII碼的差值。fun函數(shù)實(shí)現(xiàn)了該功能。

51.B解析:函數(shù)間的參數(shù)的傳遞有兩種情況,第一種情況變量作為形參時(shí)的參數(shù)傳遞,變量作為形參時(shí),要求對(duì)應(yīng)的實(shí)參應(yīng)為變量或表達(dá)式,變量作為函數(shù)的參數(shù)其傳遞方式是“值傳遞”,該種情況下,形參被賦值為實(shí)參的值,然后實(shí)參與形參再無(wú)聯(lián)系。也就是說(shuō)對(duì)形參的改變將不再影響實(shí)參;第二種情況是地址或數(shù)組名作為形參時(shí)的參數(shù)傳遞,該種情況下對(duì)形參的改變將對(duì)實(shí)參產(chǎn)生影響。本題中函數(shù)swapl()是傳遞的地址。所以對(duì)該形參c的改變將影響實(shí)參,分析可知該函數(shù)的作用,是使數(shù)組c的第一個(gè)元素和第二個(gè)元素的值互換。主函數(shù)中調(diào)用該函數(shù)將a作為實(shí)參傳遞給形參c,故執(zhí)行該函數(shù)后a的第一個(gè)元素和第二個(gè)元素的值將交換。分別為5和2。函數(shù)swap2()是值傳遞的,所以該函數(shù)執(zhí)行后對(duì)數(shù)組b將沒(méi)有任何改變,此時(shí)該數(shù)組的第一個(gè)和第二個(gè)元素依然為3和5,因此最后的輸出為5、3、3和5。

52.A解析:自增運(yùn)算符“++”,放在變量之前表示在使用變量之前,先使變量的值加1;放在變量之后表示在使用變量之后,再使變量的值加1。第一條輸出語(yǔ)句,先輸出m=12,m再自加1,變成13,n先自加1再輸出,輸出n=35;第二條輸出語(yǔ)句,先輸出n=35,n再自加1,變成36,m先自加1再輸出,輸出m=14。

53.D解析:本題考查了考生對(duì)字符串常量的理解。字符串常量是一段以雙引號(hào)括起來(lái)的字符序列,它既可以出現(xiàn)在對(duì)字符數(shù)組的初始化中,也可以出現(xiàn)在表達(dá)式中。當(dāng)它用于對(duì)字符數(shù)組的初始化時(shí),應(yīng)注意系統(tǒng)自動(dòng)為其添加的結(jié)束標(biāo)志'\\0'。而當(dāng)它出現(xiàn)在表達(dá)式中時(shí),應(yīng)該將其看作一個(gè)constchar*類(lèi)型的指針常量。在選項(xiàng)A中,首先定義了一個(gè)字符指針sp,然后將一個(gè)字符串賦給甲所指的地址,這是錯(cuò)誤的。因?yàn)閟p是一個(gè)未經(jīng)初始化的野指針,不知其指向哪兒,往一個(gè)不確定的地址中寫(xiě)數(shù)據(jù)很容易讓程序出錯(cuò)。選項(xiàng)B首先定義了一個(gè)字符數(shù)組,然后將一個(gè)字符串賦給數(shù)組名,這是錯(cuò)誤的。因?yàn)閿?shù)組名是一個(gè)指針常量,不可以被改變。選項(xiàng)C首先定義了一個(gè)字符數(shù)組,然后將一個(gè)字符串賦給數(shù)組的第一個(gè)元素,這也是錯(cuò)誤的。因?yàn)樽址诒磉_(dá)式中相當(dāng)于一個(gè)常字符指針,將一個(gè)指針值賦給一個(gè)字符型變量是行不通的。選項(xiàng)D是定義一個(gè)字符指針sp,同時(shí)使其指向一個(gè)字符串常量,即將一個(gè)常字符型指針賦給sp。這是可行的。所以,4個(gè)選項(xiàng)中選項(xiàng)D符合題意。

54.A解析:本題程序的功能是求1到99之間(包括1和99)所有奇數(shù)之和。程序中的while循環(huán)的終止條件為++i=100,在while循環(huán)體內(nèi),如果i是偶數(shù),則執(zhí)行continue,跳過(guò)這一次循環(huán),執(zhí)行下—次循環(huán),否則求和和。最后輸出的值是1到99之間(包括1和99)所有奇數(shù)之和(1+99)*50/2=2500。

55.D解析:中序遍歷的遞歸算法如下:①遍歷左子樹(shù);②訪問(wèn)根結(jié)點(diǎn);③遍歷右子樹(shù)。前序遍歷的遞歸算法如下:①訪問(wèn)根結(jié)點(diǎn);②遍歷左子樹(shù);③遍歷右子樹(shù)。后序遍歷的遞歸算法如下:①遍歷左子樹(shù);②遍歷右子樹(shù);③訪問(wèn)根結(jié)點(diǎn)。由后序遍歷結(jié)果dabec可知c是根結(jié)點(diǎn),且無(wú)右子樹(shù)。再由左子樹(shù)的后序遍歷結(jié)果dabe可知,e是左子樹(shù)的根結(jié)點(diǎn),且由左子樹(shù)的中序遍歷結(jié)果deba可知,d是左子樹(shù)的左子樹(shù)結(jié)點(diǎn),b和a是左子樹(shù)的右子樹(shù)結(jié)點(diǎn)。再次由后序遍歷結(jié)果ab可知,a是左子樹(shù)結(jié)點(diǎn)。b是根結(jié)點(diǎn)。至此,各結(jié)點(diǎn)在樹(shù)中的位置已完全確定。

56.B解析:根據(jù)題中給定的條件,可做如下模擬操作:

①元素a、b、c進(jìn)棧,棧中有3個(gè)元素,分別為a、b、c;

②元素c出棧后,元素d、e、f進(jìn)棧,棧中有5個(gè)元素,分別為a、b、d、e、f;

③元素f、e、d、a、b出棧,棧為空??梢钥闯觯M(jìn)棧的順序?yàn)閍、b、c、d、e、f,出棧的順序?yàn)閏、f、e、d、b、a,滿(mǎn)足題中所提出的要求。

在每一次進(jìn)棧操作后,棧中最多有3個(gè)元素,因此,為了順利完成這些操作,棧的容量應(yīng)至少為5。本題答案為B。

57.D本題考查如何引用數(shù)組元素的地址。選項(xiàng)A)中,p5引用的是af51的地址,而數(shù)組a只有5個(gè)元素,即a[0]、a[1]、a[2]、a[3]、a[4],所以引用錯(cuò)誤;選項(xiàng)B)中,*a1指的是將數(shù)組a的第一個(gè)元素加1;選項(xiàng)C)中,這種引用方式錯(cuò)誤;選項(xiàng)D)中,&a[0]引用的是數(shù)組的首地址。

58.A解析:p是指向結(jié)構(gòu)aa的結(jié)構(gòu)指針,++(p->x)是對(duì)p的x成員的值進(jìn)行加1。p=aa使得p指向aa的首地址,p->x的值為50,那么++(p->X)就等于51。

59.A解析:本題考核的知識(shí)點(diǎn)是for循環(huán)和switch語(yǔ)句的綜合運(yùn)用。for循環(huán)執(zhí)行了3次,第一次時(shí)i的值為0,執(zhí)行其后的switch語(yǔ)句,沒(méi)有匹配的case,執(zhí)行default語(yǔ)句后的pdntf語(yǔ)句,輸出為0;第二次循環(huán)時(shí)i的值為1,執(zhí)行其后的switch語(yǔ)句,與第一個(gè)case分支匹配,執(zhí)行其后的printf語(yǔ)句,輸出1,由于沒(méi)有遇到break語(yǔ)句,所以一直向下執(zhí)行,又輸出了兩個(gè)1,第三次循環(huán)時(shí)i值為2,執(zhí)行其后的switch語(yǔ)句,同理輸出兩個(gè)2。所以,A選項(xiàng)為所選。

60.B解析:本題考查二維數(shù)組第一維的大小如何確定。二維數(shù)組第一維的大小由下列規(guī)則確定:①當(dāng)初值的個(gè)數(shù)能被第二維的常量表達(dá)式的值除盡時(shí),所得商數(shù)就是第一維的大小:②當(dāng)初值的個(gè)數(shù)不能被第二維的常量表達(dá)式的值除盡時(shí),第一維的大小等于所得商數(shù)加1。

61.D

62.B按邏輯位運(yùn)算特點(diǎn):①用按位與運(yùn)算將特定位清為0或保留特定位;②用按位或運(yùn)算將特定的位置為1;③用按位異或運(yùn)算將某個(gè)變量的特定位翻轉(zhuǎn)或交換兩個(gè)變量的值。

63.AA選項(xiàng)stnletonl{intx;inty;int2;struetoraa;錯(cuò)誤,不

溫馨提示

  • 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)論