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è),還剩30頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(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.語(yǔ)句“printf("akbre"\'hi\'y\\\bou\n")”;的輸出結(jié)果是()。

A.akbre\'hi\'y'\\\bou

B.a\bre\'hi\\y\bou

C.re'hi'you

D.abre'hi'y\bou

2.設(shè)q1和q2是指向一個(gè)float型一維數(shù)組的指針變量,k為float型變量,則不能正確執(zhí)行的語(yǔ)句是()。

A.k=*q1+*q2;B.q1=k;C.q1=q2;D.k=*q1*(*q2);

3.以下敘述中錯(cuò)誤的是()。

A.C語(yǔ)言中的每條可執(zhí)行語(yǔ)句和非執(zhí)行語(yǔ)句最終都將被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令

B.C程序經(jīng)過(guò)編譯、連接步驟之后才能形成一個(gè)真正可執(zhí)行的二進(jìn)制機(jī)器指令文件

C.用C語(yǔ)言編寫(xiě)的程序稱(chēng)為源程序,它以ASCII形式存放在一個(gè)文本文件中

D.C語(yǔ)言源程序經(jīng)編譯后生成擴(kuò)展名為.obj的目標(biāo)文件

4.設(shè)有表示學(xué)生選課的三張表,學(xué)生S(學(xué)號(hào),姓名,性別,年齡,身份證號(hào)),課程C(課號(hào),課名),選課SC(學(xué)號(hào),課號(hào),成績(jī).,則表SC的關(guān)鍵字(鍵或碼)為()

A.課號(hào),成績(jī)B.學(xué)號(hào),成績(jī)C.學(xué)號(hào),課號(hào)D.學(xué)號(hào),姓名,成績(jī)

5.設(shè)以下變量均為int類(lèi)型,則值不等于7的表達(dá)式是()。

A.(x=y=6,x+y,x+1)

B.(x=y=6,x+y,y+1)

C.(x=6,x+1,y=6,x+y)

D.(y=6,y+l,x=y,x+1)

6.有以下程序:#include<stdio.h>main(){FILE*fp;charstr[10];fp=fopen(“myfile.dat”,“w”);fputs(“abc”,fp);fclose(fp);fp=fopen(“myfile.dat”,“a+”);fprintf(fp,“%d”,28);rewind(fp);fscanf(fp,“%s”,str);puts(str);fclose(fp);}程序的運(yùn)行結(jié)果是()。

A.abcB.28cC.abc28D.因類(lèi)型不一致而出錯(cuò)

7.以下程序的輸出結(jié)果是______。main(){inta[4][4]={{1,3,5},{2,4,6},{3,5,7}};printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1];a[3][0]);}

A.650B.1470C.5430D.輸出值不定

8.若整型變量a、b、c、d中的值依次為2、2、3、4,則條件表達(dá)式a<b?a:c<d?c:d的值是()。A.1B.2C.3D.4

9.軟件生命周期可分為定義階段、開(kāi)發(fā)階段和維護(hù)階段。詳細(xì)設(shè)計(jì)屬于()。

A.定義階段B.開(kāi)發(fā)階段C.維護(hù)階段D.上述三個(gè)階段

10.

有下列程序:

main

{charp[]={a,h,c},q[]="a";

printf("%d%d\n".sizeof(P),sizeof(q));

}

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

A.44B.33C.34D.43

11.下列敘述中錯(cuò)誤的是()。

A.C程序可以由多個(gè)程序文件組成

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

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

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

12.若有定義inta=5,b=7;,則表達(dá)式a%=(b%2)運(yùn)算后,a的值為()。

A.0B.1C.11D.3

13.若變量已正確定義并賦初值,以下合法的賦值語(yǔ)句是()。

A.k=(m==n);B.k=-m-nC.k=int(m+n);D.k=m*n=1;

14.在三級(jí)模式之間引入兩層映像,其主要功能之一是()。

A.使數(shù)據(jù)與程序具有較高的獨(dú)立性B.使系統(tǒng)具有較高的通道能力C.保持?jǐn)?shù)據(jù)與程序的一致性D.提高存儲(chǔ)空間的利用率

15.執(zhí)行下面程序中的輸出語(yǔ)句后,輸出結(jié)果是()。A.65B.20C.15D.10

16.下列說(shuō)法中錯(cuò)誤的是A.A.只能在循環(huán)體內(nèi)使用break語(yǔ)句

B.在循環(huán)體內(nèi)使用break語(yǔ)句可以使流程跳出本層循環(huán)體,從而提前結(jié)束本層循環(huán)

C.在while和do…while循環(huán)中,continue語(yǔ)句并沒(méi)有使整個(gè)循環(huán)終止

D.continue的作用是結(jié)束本次循環(huán),即跳過(guò)本次循環(huán)體中余下尚未執(zhí)行的語(yǔ)句,接著再一次進(jìn)行循環(huán)判斷

17.已知小寫(xiě)字母a的ASCII碼為97,大寫(xiě)字母A的ASCII碼為65,以下程序的結(jié)果是______。main(){unsignedinta=32,b=66;printf("%c\n",b|b);}

A.66B.98C.bD.B

18.有以下程序:#include<stdio.h>#include<string.h>main(){printf(“%d\n”,strlen(“0\t\n\0C011\1”));}程序運(yùn)行后的輸出結(jié)果是()。

A.3B.13C.1D.0

19.有如下程序intfunc(inta,intb){return(a+b);}main(){intx=2,y=5,z=8,r;r=func(fnnc(x,y),z);printf("%d\n",r);}該程序的輸出結(jié)果是______。

A.12B.13C.14D.15

20.

二、2.填空題(20題)21.在面向?qū)ο蠓椒ㄖ?,?lèi)之間共享屬性和操作的機(jī)制稱(chēng)為_(kāi)_____。

22.以下程序從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),并計(jì)算它們之和。請(qǐng)?zhí)羁铡?/p>

main()

{inti,a[20],sum,count;

sum=count=0;

for(i=0;i<20;i++)scanf("%d",【】);

for(i=0;i<20;i++)

{if(a[i]>0)

{count++;

sum+=a[i];

}

}

printf("sum=%d,count=%d\n",sum,count);

}

23.在關(guān)系數(shù)據(jù)庫(kù)中,將數(shù)據(jù)表示成二維表,每一個(gè)二維表稱(chēng)為_(kāi)_____。

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

main()

{char*p[]={"BOOL","OPK","H","SP"};

inti;

for(i=3;i>0;i--,i--)printf("%c",*p[i]);

printf("\n");}

25.對(duì)于長(zhǎng)度為n的順序存儲(chǔ)的線性表,當(dāng)隨機(jī)插入和刪除—個(gè)元素時(shí),需平均移動(dòng)元素的個(gè)數(shù)為【】。

26.以下程序的功能是輸出如下形式的方陣:

13141516

9101112

5678

1234

請(qǐng)?zhí)羁铡?/p>

main()

{inti,j,x;

for(j=4;j>0;j--)

{for(i=1;i<=4;i++)

{x=(j-1)*4+【】;

printf("%4d",x);

}

printf("\n");

}

}

27.用以下語(yǔ)句調(diào)用庫(kù)函數(shù)malloc,使字符指針st指向具有11個(gè)字節(jié)的動(dòng)態(tài)存儲(chǔ)空間,請(qǐng)?zhí)羁?。st=(char*)【】;

28.數(shù)據(jù)庫(kù)的邏輯模型設(shè)計(jì)階段的任務(wù)是將______轉(zhuǎn)換成關(guān)系模式。

29.表達(dá)式1/2*(int)3.7/(int)(2.4*(1.5+2.5))值的數(shù)據(jù)類(lèi)型為_(kāi)_____。

30.數(shù)據(jù)庫(kù)系統(tǒng)中實(shí)現(xiàn)各種數(shù)據(jù)管理功能的核心軟件稱(chēng)為【】。

31.以下函數(shù)用于求出一個(gè)2×4矩陣中的最大元素值。

max_value(arr)

intarr[][4];

{

inti,j,max;

max=arr[O][0];

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

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

if(【】>max)max=【】;

return(max);

}

32.數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu),循環(huán)隊(duì)列屬于______結(jié)構(gòu)。

33.下面程序的運(yùn)行結(jié)果是【】。

#include<stdio.h>

#defineSIZE12

main()

{chars[SIZE];intI;for(I=0;I<SIZE;I++)s[I]=′A′+I+321;

sub(s,7,SIZE-1);

for(I=0;I<SIZE;I++)printf("%c",s[I]);

printf("\n");}

sub(char*a,intt1,intt2)

{charch;

while(t1<t2)

{ch=*(a+t1);

*(a+t1)=*(a+t2);

*(a+t2)=ch;

t1++;t2--;}}

34.以下程序的運(yùn)行結(jié)果為【】。

#defineFORMAT"%u,%u"

main()

{inta[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};

printf("\n");

printf(FORMAT,**a,*a[0]);

printf(FORMAT,*(a[0]+1),*&a[0][1]);

printf(FORMAT,a[1][0],*(*(a+1)+0));

}

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

#include<stdio.h>

main()

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

d=(a>b>c);

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

}

36.診斷和改正程序中錯(cuò)誤的工作通常稱(chēng)為【】。

37.函數(shù)fun的功能是計(jì)算xn。

doublefun(doublex,intn)

{inti;doubley=1;

for(i=1;i<=n;i++)y=y*x;

returny;

}

主函數(shù)中已經(jīng)正確定義變量m,a,b并賦值,要調(diào)用函數(shù)fun計(jì)算:m=a4+b4-(a+b)3。實(shí)現(xiàn)這一計(jì)算的函數(shù)調(diào)用語(yǔ)句為【】。

38.調(diào)用C語(yǔ)言標(biāo)準(zhǔn)庫(kù)函數(shù)時(shí)要求用【】命令。

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

40.關(guān)系模型的數(shù)據(jù)操縱即是建立在關(guān)系上的數(shù)據(jù)操縱,一般有______、增加、刪除和修改四種操作。

三、1.選擇題(20題)41.軟件設(shè)計(jì)包括軟件的結(jié)構(gòu)、數(shù)據(jù)接口和過(guò)程設(shè)計(jì),其中軟件的過(guò)程設(shè)計(jì)是指()

A.模塊間的關(guān)系B.系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過(guò)程描述C.軟件層次結(jié)構(gòu)D.軟件開(kāi)發(fā)過(guò)程

42.以下敘述中錯(cuò)誤的是

A.在程序中凡是以"#"開(kāi)始的語(yǔ)句行都是預(yù)處理命令行

B.預(yù)處理命令行的最后不能以分號(hào)表示結(jié)束

C.#defineMAX是合法的宏定義命令行

D.C程序?qū)︻A(yù)處理命令行的處理是在程序執(zhí)行的過(guò)程中進(jìn)行的

43.對(duì)長(zhǎng)度為n的線性表進(jìn)行順序查找,在最壞情況下需要比較的次數(shù)為()。

A.125B.n/2C.nD.n+1

44.有以下程序#include<stdlib.h>main(){char*p,*q;p=(char*)malloc(sizeof(char)*20);q=p;scanf(“%s%s”,p,q);printf(“%s%s\n”,p,q);}若從鍵盤(pán)輸入:abcdef<回車(chē)>,則輸出結(jié)果是

A.defdefB.abcdefC.abcdD.dd

45.兩個(gè)或兩個(gè)以上模塊之間聯(lián)系的緊密程度稱(chēng)為()。

A.耦合性B.內(nèi)聚性C.復(fù)雜性D.數(shù)據(jù)傳輸特性

46.執(zhí)行以下程序后,a,b的值分別為main(){ina,b,k=4,m=6,*p1=&k,*p2=&m;a=p1==&m;b=(*p1)/(*p2)+7;printf("a=%d\n",a);printf("b=%d\n",b);}

A.-1,5B.1,6C.0,7D.4,10

47.為使*p=20,下面正確的程序是()

A.#include<stdio.h>main(){inta=10,b=20,*p=&b;printf("%d\t%d\n",p,*p);}*p)

B.#include<stdio.h>main(){inta=10,b=20,*p=b;printf("%d\t\%d\n",p,*p)}

C.#include<stdio.h>main(){inta=10,b=20,*p;p=&a;p++;printf("%d\t\%d\n",p,*p);}}

D.#include<stdio.h>main(){inta=10,b=20,*p;*p=20;printf("%d\t\%d\n",p,*p);}

48.若有定義語(yǔ)句:inta[2][3],*p[3],則以下語(yǔ)句中正確的是A.p=a;B.p[0]=a;C.p[0]=&a[1][2];D.p[1]=&a;

49.在調(diào)用函數(shù)時(shí),如果實(shí)參是簡(jiǎn)單變量,它與對(duì)應(yīng)形參之間的數(shù)據(jù)傳遞方式是______。

A.地址傳遞B.單向值傳遞C.由實(shí)參傳遞給形參,再由形參傳遞給實(shí)參D.傳遞方式由用戶指定

50.下列程序的輸出結(jié)果是()。main(){chara[7]="a0\0a0\0";inti,j;i=sizeof(a);j=strlen(a);printf("%d%d\n",i,j);}

A.22B.76C.72D.62

51.數(shù)據(jù)獨(dú)立性是數(shù)據(jù)庫(kù)技術(shù)的重要特點(diǎn)之一。所謂數(shù)據(jù)獨(dú)立性是指()

A.數(shù)據(jù)與程序獨(dú)立存放

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

C.不同的數(shù)據(jù)只能被對(duì)應(yīng)的應(yīng)用程序所使用

D.以上三種說(shuō)法都不對(duì)

52.假定所有變量均已正確說(shuō)明,下列程序段運(yùn)行后x的值是()a=b=c=0;x=35;if(!a)x--;elesif(b);if(c)x=3;elsex=4;

A.34B.4C.35D.3

53.下列字符數(shù)組初始化語(yǔ)句中,不正確的是()。

A.charc[]='goodmorning';

B.charc[20]=“goodmorning";

C.charc[]={'a','b','c','d'};

D.charc[]={"goodmorning"};

54.假設(shè)在turboc2.0采用small模式編譯如下程序main(){chara[4]={'a','b'};char*b="abc";printf("%d,%d",sizeof(a),sizeof(b));}其輸出結(jié)果為_(kāi)_____。

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

55.函數(shù)的值通過(guò)return語(yǔ)句返回,下面關(guān)于return語(yǔ)句的形式描述錯(cuò)誤的是

A.return表達(dá)式;

B.return(表達(dá)式);

C.一個(gè)return語(yǔ)句可以返回多個(gè)函數(shù)值

D.一個(gè)return語(yǔ)句只能返回一個(gè)函數(shù)值

56.有下列程序:fun(intx,inty){staticintm=0,i=2;i+=m+1;m=i+x+y;returnm;}main(){intj=1,m=1,k;k=fun(j,m);printf("%d,",k);k=fun(j,m);printf("%d\n".k);}執(zhí)行后的輸出結(jié)果是()。

A.5,5B.5,11C.11,11D.11,5

57.有以下程序structs{intx,y;}data[2]={10,100,20,200};main(){structs*p=data;printf("%d\n",++(p->x));}程序運(yùn)行后的輸出結(jié)果是

A.10B.11C.20D.21

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

A.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象之間具有密切的聯(lián)系

B.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象都是公用的

C.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,各個(gè)對(duì)象之間相對(duì)獨(dú)立,相互依賴(lài)性小

D.上述三種說(shuō)法都不對(duì)

59.若有“doublea;”,則正確的輸入語(yǔ)句是()。

A.scanf("%1f",A);

B.scanf("%f",&A);

C.scanf("%1f",&A);

D.scanf("%1e",A);

60.有以下程序main(){chara[]="abcdefg",b[10]="abedefg";pfintf("%d%d\n",sizeof(a),sizeof(b));}執(zhí)行后輸出結(jié)果是

A.77B.88C.810D.1010

四、選擇題(20題)61.

62.已知字符'A'的ASCⅡ代碼值是65,字符變量c1的直是'A',c2的值是'D'。執(zhí)行語(yǔ)句printf("%d,%d",c1,c2-2);后,輸出結(jié)果是()。

A.A.A,BB.A,68C.65,66D.65,68

63.

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

main()

{inti,a[4][4]一{{1,3,5),{2,4,6},{3,5,7}};

printf("%(1%d%d%d\n".a(chǎn)[O][3],a[1][2],a[2]

[1],a[3][0];

}

A.0650B.1470C.5430D.輸出值不定

64.

65.(27)程序流程圖(PFD)中的箭頭代表的是()

A.數(shù)據(jù)流

B.控制流

C.調(diào)用關(guān)系

D.組成關(guān)系

66.對(duì)字符數(shù)組s賦值,不合法的一個(gè)是()。

A.chars[]="Beijing"

B.chars[20]={"Beijing"}

C.chars[20];s="Beijing"

D.chars[20]={’B,’e’,’i’,’j’,’i’,’n’,’g’}

67.軟件測(cè)試的目的是()。

A.評(píng)估軟件可靠性B.發(fā)現(xiàn)并改正程序中的錯(cuò)誤C.改正程序中的錯(cuò)誤D.發(fā)現(xiàn)程序中的錯(cuò)誤

68.有以下程序:

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

A.1,2B.1,0C.3,2D.0,0

69.

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

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

71.

72.

73.成功的測(cè)試是指A.A.運(yùn)行測(cè)試實(shí)例后未發(fā)現(xiàn)錯(cuò)誤

B.發(fā)現(xiàn)程序的錯(cuò)誤

C.證明程序正確

D.軟件產(chǎn)生

74.

有以下程序

#include<stdio.h>

intfun(chars[])

{intn=0;

while(*s<=9&&*s>=0){n=10*n+*s-o;s++;)

return(n);

}

main

{chars[10]={6,1,*,4,*,9,*,0,*);

printf("%d",fun(s));

}

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

A.9B.61490C.61D.5

75.

76.

77.軟件生命周期是指()。A.軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的過(guò)程

B.軟件從需求分析、設(shè)計(jì)、實(shí)現(xiàn)到測(cè)試完成的過(guò)程

C.軟件的開(kāi)發(fā)過(guò)程

D.軟件的運(yùn)行維護(hù)過(guò)程

78.

79.

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

#include<stdio.h>

voidfun(int*S,int*p)

{staticintt=3:

*p=s[t];

t--;

}

voidmain

{inta[]={2,3,4,5),k;

intx;

for(k=0,k<4,k++)

{fun(a,&x);

printf("%d,",x);

}

}

A.5,4,3,2B.2,3,4,5C.2,2,2,2D.5,5,5,5

80.

五、程序改錯(cuò)題(1題)81.下列給定的程序中,函數(shù)proc()的功能是:計(jì)算并輸出m以?xún)?nèi)最大的6個(gè)能被7或11整除的自然數(shù)之和。m的值由主函數(shù)傳人。例如,若m的值為600,則函數(shù)的值為3515。請(qǐng)修改程序中的錯(cuò)誤,使它能得到正確結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:

六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開(kāi)考生文件夾下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,請(qǐng)編寫(xiě)函數(shù)fun(),該函數(shù)的功能是統(tǒng)計(jì)各年齡段的人數(shù)。N個(gè)年齡通過(guò)調(diào)用隨機(jī)函數(shù)獲得,并放入主函數(shù)的age數(shù)組中。要求函數(shù)把0~9歲的人數(shù)存放在d[0]中,把10~19歲的人數(shù)存放在d[1]中,把20~29歲的人數(shù)存放在d[2]中,依此類(lèi)推,把100歲(含100歲)以上年齡的人數(shù)都存放在d[10]中。結(jié)果在主函數(shù)中輸出。注意:部分源程序在文件prog1.c中。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。試題程序:

參考答案

1.C先輸出a、b表示退一格,當(dāng)執(zhí)行到:\b后,光標(biāo)往后退,接著輸出re'hi'y\(反斜杠后又加一個(gè)反斜杠的意思是要輸出一個(gè)反斜杠),此時(shí)又執(zhí)行:\b后,\就被ou覆蓋。

2.B解析:選項(xiàng)A)是將指針q1和q2所指向的變量值相加,然后賦給k;選項(xiàng)B)中,float型數(shù)據(jù)和指針型數(shù)據(jù)之間不能進(jìn)行賦值運(yùn)算:選項(xiàng)C)中,是兩個(gè)指針變量之間的賦值:選項(xiàng)D)中,是兩個(gè)指針型變量所指向的兩個(gè)float型數(shù)據(jù)相乘。

3.AC語(yǔ)言中的非執(zhí)行語(yǔ)句不會(huì)被編譯,不會(huì)被轉(zhuǎn)換成二進(jìn)制的機(jī)器指令,所以A選項(xiàng)錯(cuò)誤。由C語(yǔ)言構(gòu)成的指令序列稱(chēng)為C語(yǔ)言源程序,C語(yǔ)言源程序經(jīng)過(guò)C語(yǔ)言編譯程序編譯之后,生成一個(gè)擴(kuò)展名為.obj的二進(jìn)制文件(稱(chēng)為目標(biāo)文件);最后要由“連接程序”把此目標(biāo)文件與C語(yǔ)言提供的各種庫(kù)函數(shù)連接起來(lái)生成一個(gè)擴(kuò)展名為.exe的可執(zhí)行文件。故本題答案為A選項(xiàng)。

4.C學(xué)號(hào)是學(xué)生表S的主鍵,課號(hào)是課程表C的主鍵,所以選課表SC的關(guān)鍵字就應(yīng)該是與前兩個(gè)表能夠直接聯(lián)系且能唯一定義的學(xué)號(hào)和課號(hào),所以選擇C項(xiàng)。

5.C

6.Cfprintf函數(shù)將內(nèi)容寫(xiě)入硬盤(pán)的文件,fputs函數(shù)將字符串寫(xiě)入文件,最終文件的內(nèi)容為abc28。故本題答案為C選項(xiàng)。

7.A解析:對(duì)未給出初始值的整數(shù)數(shù)組元素,被默認(rèn)初始化為零。

8.C本題考查三目運(yùn)算符a<b?a:c<d?c:d也可寫(xiě)成a<b?a:(c<d?c:d),所以根據(jù)優(yōu)先級(jí),先算括號(hào)內(nèi)的,c小于d為真取C的值,再看a小于b為假,所以取C的值。

9.B解析:軟件生命周期由軟件定義、軟件開(kāi)發(fā)和軟件維護(hù)三個(gè)階段組成。軟件定義可分為軟件系統(tǒng)的可行性研究和需求分析兩個(gè)階段。軟件開(kāi)發(fā)階段由5個(gè)階段組成:概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編寫(xiě)代碼、組裝測(cè)試和確認(rèn)測(cè)試。軟件維護(hù)時(shí)期的主要任務(wù)是使軟件持久地滿足用戶的需要。選項(xiàng)B正確。

10.C

\n語(yǔ)句charp[]={a,b,c);定義了一個(gè)一維字符數(shù)組p[],并用3個(gè)字符a,b,c進(jìn)行了初始化;而語(yǔ)句q[]='abe'表示定義了一個(gè)一維字符數(shù)組,并用一個(gè)字符串常量'abc'進(jìn)行了初始化。在C語(yǔ)言中,系統(tǒng)在每個(gè)字符串常量的最后自動(dòng)加入一個(gè)字符\0作為字符串的結(jié)束符。所以函數(shù)sizeof(q)=4,而sizeof(p)=3,因而選項(xiàng)C為正確答案。

\n

\n

\n

11.B在一個(gè)C語(yǔ)言程序中可以實(shí)現(xiàn)多種算法,所以B選項(xiàng)錯(cuò)誤。故本題答案為B選項(xiàng)。

12.A解析:本題考查'%'運(yùn)算符的使用。運(yùn)算符'%'要求兩個(gè)運(yùn)算對(duì)象都為整型,其結(jié)果是整數(shù)除法的余數(shù)。本題中表達(dá)式ao%=(b%2)等價(jià)于a=a%o(b%2)=5%(7%2)=5%1=0。

13.A變量m、n的數(shù)據(jù)類(lèi)型未知,但題目中已定義并賦初值。選項(xiàng)B的語(yǔ)句缺少分號(hào)結(jié)尾。選項(xiàng)C,強(qiáng)制轉(zhuǎn)化使用錯(cuò)誤。選項(xiàng)D的“m*n”只能用作表達(dá)式的右值,不能作為左值。故本題答案為A選項(xiàng)。

14.AA.【解析】數(shù)據(jù)庫(kù)管理系統(tǒng)在數(shù)據(jù)庫(kù)的三級(jí)模式之間提供了兩層映像,保證了數(shù)據(jù)庫(kù)中數(shù)據(jù)的較高的邏輯獨(dú)立性和物理獨(dú)立性。使系統(tǒng)具有較高的通道能力和提高存儲(chǔ)空間的利用率是操作系統(tǒng)的職能,而不是數(shù)據(jù)庫(kù)管理系統(tǒng)的職能。在數(shù)據(jù)庫(kù)系統(tǒng)中沒(méi)有“數(shù)據(jù)和程序一致性”這一概念。

15.B

16.A解析:只能在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)使用break語(yǔ)句,當(dāng)break出現(xiàn)在循環(huán)體中的switch語(yǔ)句體時(shí),其作用是跳出該switch語(yǔ)句體。當(dāng)break出現(xiàn)在循環(huán)體中,但不在switch語(yǔ)句體中時(shí),則在執(zhí)行break后,跳出本層循環(huán)體。continue語(yǔ)句的作用是,跳過(guò)本次循環(huán)體中余下尚未執(zhí)行的語(yǔ)句,接著再一次進(jìn)行循環(huán)的條件判定。

17.C解析:位運(yùn)算符“|”的作用是按位或,即兩個(gè)二進(jìn)制數(shù)的相應(yīng)位中只要一個(gè)為1,該位的結(jié)果值為1。最后以字符型輸出,98對(duì)應(yīng)的字符“b”。

18.AC語(yǔ)言中的轉(zhuǎn)義字符也是一個(gè)字符。字符串“0\\t\\n\\0C011\\1”,共有字符‘0’、‘\\t’、‘\\n’3個(gè)字符。strlen遇到‘\\0’字符計(jì)數(shù)結(jié)束,因此計(jì)數(shù)為3。故本題答案為A選項(xiàng)。

19.D

20.A

21.繼承繼承

22.&a[i]&a[i]解析:主要考查函數(shù)scanf的用法.應(yīng)填數(shù)組a的元素的地址。

23.關(guān)系或關(guān)系表關(guān)系或關(guān)系表解析:在關(guān)系模型中,把數(shù)據(jù)看成一個(gè)二維表,每一個(gè)二維表稱(chēng)為一個(gè)關(guān)系.表中的每一列稱(chēng)為一個(gè)屬性,相當(dāng)于記錄中的一個(gè)數(shù)據(jù)項(xiàng),對(duì)屬性的命名稱(chēng)為屬性名,表中的一行稱(chēng)為一個(gè)元組,相當(dāng)于記錄值。

24.SOSO解析:考查用指針引用字符串?dāng)?shù)組中元素的方法。題中需要注意兩個(gè)問(wèn)題:一是for循環(huán)的修正表達(dá)式共執(zhí)行兩次'i--'操作;二是*p[i]是對(duì)某個(gè)字符的引用。

25.n/2n/2解析:刪除—個(gè)元素,平均移動(dòng)的元素個(gè)數(shù)為(n-1+n-2+…+0)/n=(n-1)/2;插入一個(gè)元素,平均移動(dòng)元素個(gè)數(shù)為(n+n-1+n-2+…+1)/n=(n+1)/2:所以總體平均移動(dòng)元素個(gè)數(shù)為n/2。

26.ii解析:外循環(huán)是遞減的,方陣中的每個(gè)元素為(j-1)*4+i,因此空格處填i。

27.malloc(11)malloc函數(shù)的格式是void*(或char*)malloc(size),size表示應(yīng)分配的存儲(chǔ)區(qū),此題要分配11字節(jié)的單元,把11代入即可。

28.E-R圖E-R圖解析:數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的任務(wù)是將概念模型進(jìn)一步轉(zhuǎn)化成相應(yīng)的數(shù)據(jù)模型。而E-R圖是主要的概念模型,因此數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)的主要工作是將E-R圖轉(zhuǎn)換成關(guān)系模式。

29.整型整型解析:上面的表達(dá)式中,通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換把最后參與運(yùn)算的數(shù)據(jù)都轉(zhuǎn)換成了int型,所以最后得到的結(jié)果也是int類(lèi)型。

30.數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)

31.j<4arr[i][j]arr[i][j]j<4\r\narr[i][j]\r\narr[i][j]解析:2*4矩陣實(shí)際上就是一個(gè)二維數(shù)組,結(jié)合本題應(yīng)為arr[2][4],所以在第一個(gè)循環(huán)中應(yīng)當(dāng)填寫(xiě)“4”;第二個(gè)橫線處是要判斷當(dāng)前的數(shù)組元素值是否大于max,所以應(yīng)填寫(xiě)arr[i][j];第三個(gè)橫線處是要將當(dāng)前大于max的數(shù)組元素的值賦給變量max,所以應(yīng)當(dāng)填寫(xiě)“arr[i][j]”。

32.存儲(chǔ)或物理或存儲(chǔ)結(jié)構(gòu)或物理結(jié)構(gòu)存儲(chǔ)或物理或存儲(chǔ)結(jié)構(gòu)或物理結(jié)構(gòu)解析:數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱(chēng)為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)(也稱(chēng)數(shù)據(jù)的物理結(jié)構(gòu))。所謂循環(huán)隊(duì)列,就是將隊(duì)列存儲(chǔ)空間的最后一個(gè)位置繞到第一個(gè)位置,形成邏輯上的環(huán)狀空間。供隊(duì)列循環(huán)使用??芍?,循環(huán)隊(duì)列應(yīng)當(dāng)是物理結(jié)構(gòu)。

33.abcdefglkjIhabcdefglkjIh解析:本題主要考查了字符變量可參與的運(yùn)算。因?yàn)樽址谟?jì)算機(jī)中是以ASCII碼的形式存放的,所以字符變量可看作整型變量來(lái)處理,如參與算術(shù)運(yùn)算等,某字符的大寫(xiě)字母的ASCII碼值比它對(duì)應(yīng)的小寫(xiě)字母ASCII碼值小32。

34.113399

35.00解析:在本題中,d=(a>b>c);相當(dāng)于d=(5>4>3);其計(jì)算過(guò)程為:先算5>4,結(jié)果為真,得1,即d=(1>3);然后計(jì)算1>3,結(jié)果為假,得0。

36.程序調(diào)試程序調(diào)試解析:程序調(diào)試的任務(wù)是診斷和改正程序中的錯(cuò)誤。程序調(diào)試與軟件測(cè)試不同,軟件測(cè)試是盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。先要發(fā)現(xiàn)軟件的錯(cuò)誤,然后借助于調(diào)試工具找出軟件錯(cuò)誤的具體位置。軟件測(cè)試貫穿整個(gè)軟件生命期,而調(diào)試主要在開(kāi)發(fā)階段。

37.fun(a4)+fun(b4)-fun((a+b)3);fun(a,4)+fun(b,4)-fun((a+b),3);解析:函數(shù)fun的功能是計(jì)算x的n次方,a的4次方的調(diào)用函數(shù)為fun(a,4),b的4次方的調(diào)用函數(shù)為fun(b,4),(a+b)的3次方的調(diào)用函數(shù)為fun((a+b),3),計(jì)算m=a4+b4-(a+b)3的函數(shù)調(diào)用語(yǔ)句為:fun(a,4)+fun(b,4)-fun((a+b),3);

38.includeinclude解析:include命令可調(diào)用標(biāo)準(zhǔn)的C語(yǔ)言庫(kù)函數(shù),可以用一對(duì)尖括號(hào)或一對(duì)雙引號(hào)將“.h”文件括起來(lái),在include前面要加“#”。

39.軟件生命周期軟件生命周期解析:軟件產(chǎn)品從考慮其概念開(kāi)始,到該軟件產(chǎn)品不能使用為止的整個(gè)時(shí)期都屬于軟件生命周期。一般包括可行性研究與需求分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、交付使用以及維護(hù)等活動(dòng)。

40.查詢(xún)查詢(xún)

41.B軟件設(shè)計(jì)包括軟件的結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)接口設(shè)計(jì)和過(guò)程設(shè)計(jì)。其中軟件結(jié)構(gòu)設(shè)計(jì)主要包括系統(tǒng)由哪些子系統(tǒng)構(gòu)成,以及這些子系統(tǒng)之間的關(guān)系是怎樣的,并將這些內(nèi)容編寫(xiě)成文檔;數(shù)據(jù)接口設(shè)計(jì)的任務(wù)是為每個(gè)子系統(tǒng)設(shè)計(jì)其與其他子系統(tǒng)間的接口,并編寫(xiě)成文檔,這個(gè)接口要是一個(gè)無(wú)二義的接口,不需要子系統(tǒng)的操作知識(shí)就可以使用;過(guò)程設(shè)計(jì)是指系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過(guò)程描述。

42.D解析:C語(yǔ)言中的預(yù)處理命令以符號(hào)#開(kāi)頭,這些命令是在程序編譯之前進(jìn)行處理的,選項(xiàng)D)的描述錯(cuò)誤。

43.CC?!窘馕觥繉?duì)線性表進(jìn)行順序查找時(shí),從表中的第一個(gè)元素開(kāi)始,將給定的值與表中逐個(gè)元素的關(guān)鍵字進(jìn)行比較,直到兩者相符,查找到所要找的元素為止。在最壞情況下,要查找的元素是表的最后一個(gè)元素或查找失敗,這兩種情況都需要將這個(gè)元素與表中的所有元素進(jìn)行比較,因此比較次數(shù)為n。

44.A解析:本題首先定義兩個(gè)字符型指針變量p和q,通過(guò)malloc()函數(shù)申請(qǐng)20個(gè)字符的存儲(chǔ)空間,并把它的首地址賦給p,再把p的值賦給q,p和q指向同一個(gè)存儲(chǔ)區(qū)。在scanf()語(yǔ)句中讀取字符串到p和q指向的字符串,先把“abc”讀取到P指向的存儲(chǔ)區(qū)中,第一個(gè)空格是結(jié)束標(biāo)記,第二個(gè)空格是分隔符,再把“def”存放到q指向的存儲(chǔ)區(qū),把原先的內(nèi)容覆蓋。所以p和q指向的存儲(chǔ)區(qū)中內(nèi)容是“def”,所以最后輸出為def,def。

45.A解析:耦合性是模塊間互相連接的緊密程度的度量,取決于各個(gè)模塊之間接口的復(fù)雜度、調(diào)用方式以及哪些信息通過(guò)接口。

[知識(shí)拓展]模塊的獨(dú)立程序是評(píng)價(jià)設(shè)計(jì)好壞的一個(gè)重要標(biāo)準(zhǔn),衡量軟件的模塊獨(dú)立性有兩個(gè)定性的度量標(biāo)準(zhǔn)。其中內(nèi)聚性是指一個(gè)模塊內(nèi)部各個(gè)元素間彼此結(jié)合的緊密程度的度最,內(nèi)聚性是從功能角度來(lái)度量模塊內(nèi)的聯(lián)系;耦合性是模塊間互相連接的緊密程度的度量,耦合性從整體的角度來(lái)度量模塊間的聯(lián)系。

46.C解析:inta,b,k=4,m=6,*p1=&k,*p2=&m;聲明整型變量a,b,k,m和指針p1,p2,并分別將4和6賦給k和m,將k和m的地址賦給P1和p2;a=p1==&m;等價(jià)于a=(p1==&m);將p1是否等于地址m的值(0)賦給變量a,b=(*p1)/(*p2)+7;該句的含義是將后面表達(dá)式的的值7賦給變量b。

47.A

48.C解析:選項(xiàng)A中,p為數(shù)組名,其值是不能被改變的,故非法;選項(xiàng)B中,p[0]的類(lèi)型是int*,而a是二維數(shù)組名(類(lèi)型為int[][3]),兩者無(wú)法賦值,故非法:選項(xiàng)C中,p[0]為int型指針,&a[1][2]是int型變量的地址,可以合法賦值;選項(xiàng)D中,p[1]是int型指針,而&a是二維數(shù)組的地址(類(lèi)型為int(*)[2][3]),兩者無(wú)法賦值,故非法。所以本題應(yīng)該選擇C。

49.B解析:C語(yǔ)言以定,實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是“單向值傳遞”,只由實(shí)參傳紿形參。在內(nèi)存中,實(shí)參單元與形參單元是不同的單元。調(diào)用結(jié)束后,實(shí)參單元仍保留并維持原值。

50.C解析:函數(shù)slzeof(a)的功能是求出字符串a(chǎn)中的字符占用存儲(chǔ)空間的大小,由于字符數(shù)組a有長(zhǎng)度為7,所以i=7;函數(shù)strlen(a)的功能是:求出字符串a(chǎn)的長(zhǎng)度。而每個(gè)字符串都以'\\0'為字符串的結(jié)束標(biāo)記,所以j的值等于2。

51.D解析:在數(shù)據(jù)庫(kù)系統(tǒng)中,通過(guò)系統(tǒng)提供的映象功能,使數(shù)據(jù)具有兩方面的獨(dú)立性:一是物理獨(dú)立性。即由于數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與邏輯結(jié)構(gòu)之間由系統(tǒng)提供映象,使得當(dāng)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)改變時(shí),其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改。二是邏輯獨(dú)立性。即由于數(shù)據(jù)的局部邏輯結(jié)構(gòu)(它是總體邏輯結(jié)構(gòu)的一個(gè)子集,由具體的應(yīng)用程序所確定,并且根據(jù)具體的需要可以作一定的修改)與總體邏輯結(jié)構(gòu)之間也由系統(tǒng)提供映象,使得當(dāng)總體邏輯結(jié)構(gòu)改變時(shí),其局部邏輯結(jié)構(gòu)可以不變,從而根據(jù)局部邏輯結(jié)構(gòu)編寫(xiě)的應(yīng)用程序也可以不必修改。由此可知,選項(xiàng)A.B與C中的說(shuō)法都是錯(cuò)誤的。

52.B

53.A

54.A解析:用small模式編譯,指針變量占2個(gè)字節(jié)。sizeof(array):數(shù)組名array代表數(shù)組本身,sizeof函數(shù)測(cè)出的是整個(gè)數(shù)組的大小。a數(shù)組的大小為4,b指針變量的大小為2。

55.C解析:return語(yǔ)句中的表達(dá)式的值就是所求的函數(shù)值,此表達(dá)式值的類(lèi)型必須與函數(shù)首部所說(shuō)明的類(lèi)型一致。如果類(lèi)型不一致,則以函數(shù)值的類(lèi)型為準(zhǔn),由系統(tǒng)自動(dòng)進(jìn)行轉(zhuǎn)換。一個(gè)return語(yǔ)句只能返回一個(gè)值。

56.B解析:子函數(shù)fun(intx,inty),將變量m和i聲明為局部靜態(tài)變量,因此第1次調(diào)用主函數(shù)后,局部靜態(tài)變量m和i的值為5和3,第1次函數(shù)調(diào)用結(jié)束時(shí),它們的值不釋放保持不變,所以第2次調(diào)用時(shí),局部靜態(tài)變量m和i的初始值分別為5和3,即在執(zhí)行“i+=m+1”時(shí),i的值為9,因此最終m的值為11。

57.B解析:本題中定義了一個(gè)結(jié)構(gòu)體數(shù)組data[2]并初始化,主函數(shù)中定義了一個(gè)結(jié)構(gòu)體類(lèi)型指針變量并讓它指向data的首地址,由于p指向第一個(gè)元素的地址,所以p->x相當(dāng)于data[0].x即為10,所以++(p->x)后的值為11。

58.C解析:在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,對(duì)象是面向?qū)ο蟮能浖幕灸K,它是由數(shù)據(jù)及可以對(duì)這些數(shù)據(jù)施加的操作所組成的統(tǒng)一體,而且對(duì)象是以數(shù)據(jù)為中心的,操作圍繞對(duì)其數(shù)據(jù)所需做的處理來(lái)設(shè)置,沒(méi)有無(wú)關(guān)的操作。從模塊的獨(dú)立性考慮,對(duì)象內(nèi)部各種元素彼此結(jié)合得很緊密,內(nèi)聚性強(qiáng)。由于完成對(duì)象功能所需要的元素(數(shù)據(jù)和方法)基本上都被封裝在對(duì)象內(nèi)部,它與外界的聯(lián)系自然就比較少,所以,對(duì)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論