2021年廣東省中山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第1頁(yè)
2021年廣東省中山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第2頁(yè)
2021年廣東省中山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第3頁(yè)
2021年廣東省中山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第4頁(yè)
2021年廣東省中山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩36頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2021年廣東省中山市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)知識(shí)點(diǎn)匯總卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.有下列程序:程序執(zhí)行后的輸出結(jié)果是()。A.eeaabmmnhhirrstu

B.efgabcdmnopqhijkIrstuvwxyz

C.efgacdmopqhjkIrvwxyz

D.eefgaabcdmmnopqhhijkIrrstuvwxyz

2.

3.設(shè)一組初始記錄關(guān)鍵字序列(5,2,6,3,8),以第一個(gè)記錄關(guān)鍵字5為基準(zhǔn)進(jìn)行一趟快速排序的結(jié)果為()。

A.2,3,5,8,6B.3,2,5,8,6C.3,2,5,6,8D.2,3,6,5,8

4.如有inta=11;則表達(dá)式(a++*1/3)的值是()。

A.0B.3C.4D.12

5.程序設(shè)計(jì)方法要求在程序設(shè)計(jì)過程中,()。

A.先編制出程序,經(jīng)調(diào)試使程序運(yùn)行結(jié)果正確后再畫出程序的流程圖

B.先編制出程序,經(jīng)調(diào)試使程序運(yùn)行結(jié)果正確后再在程序中的適當(dāng)位置處加注釋

C.先畫出流程圖,再根據(jù)流程圖編制出程序,最后經(jīng)調(diào)試使程序運(yùn)行結(jié)果正確后再在程序中的適當(dāng)位置處加注釋

D.以上3種說法都不對(duì)

6.在n個(gè)結(jié)點(diǎn)的線性表的數(shù)組實(shí)現(xiàn)中,算法的時(shí)間復(fù)雜度是O(1)的操作是()。

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

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

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

D.以上都不對(duì)

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

A.C語(yǔ)言編譯系統(tǒng)對(duì)標(biāo)識(shí)符的長(zhǎng)度沒有規(guī)定

B.C語(yǔ)言標(biāo)識(shí)符的規(guī)定長(zhǎng)度因系統(tǒng)而異

C.C語(yǔ)言規(guī)定標(biāo)識(shí)符長(zhǎng)度最多允許16個(gè)字符,超長(zhǎng)報(bào)錯(cuò)

D.C語(yǔ)言規(guī)定以下劃線開頭的標(biāo)識(shí)符長(zhǎng)度必須大于1

8.下列不屬于過程設(shè)計(jì)工具中圖形工具的是()。

A.N—SB.PADC.程序流程圖D.PDL

9.有以下程序:

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

A.10B.40C.32D.8

10.有以下程序

#include<stdio.h>

main()

{intx=1,y=2,z=3;

if(x>y)

if(y<z)printf("%d",++z);

elseprintf("%d",++y);

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

}

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

A.A.331

B.41

C.2

D.1

11.有以下程序:#include<stdio.h>#defineSUB(a)(a)-(a)main(){inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf(“%d\n”,d);}程序的運(yùn)行結(jié)果是()。

A.0B.-12C.-20D.10

12.若函數(shù)調(diào)用時(shí)的實(shí)參為變量,下列關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。

A.函數(shù)的形參和實(shí)參分別占用不同的存儲(chǔ)單元

B.形參只是形式上的存在,不占用具體存儲(chǔ)單元

C.同名的實(shí)參和形參占同一存儲(chǔ)單元

D.函數(shù)的實(shí)參和其對(duì)應(yīng)的形參共占同一存儲(chǔ)單元

13.

14.對(duì)如下二叉樹進(jìn)行后序遍歷的結(jié)果為()。

A.ABCDEFB.DBEAFCC.ABDECFD.DEBFCA

15.以下選項(xiàng)中合法的C語(yǔ)言常量是()。

A.‘C-STR’B.2014.1C.”\1.0D.2EK

16.有以下程序:#include<stdio.h>inta=1,b=2:voidfunl(inta,intb){printf("%d%d",a,b);}voidfun2(){a=3;b=4;}main(){funl(5,6);fun2();printf("%d%d\n",a,b);}程序運(yùn)行后的輸出結(jié)果是()。A.1256B.5634C.5612D.3456

17.對(duì)于“if(表達(dá)式)語(yǔ)句”,以下敘述正確的是()。

A.“表達(dá)式”不能是變量

B.“表達(dá)式”的值只能是整數(shù)值

C.“表達(dá)式”可以是常量

D.“表達(dá)式”中不可以出現(xiàn)字符型變量的比較

18.下列程序的輸出結(jié)果是()#include<stdio.h>main(){inta=0,i;for(i=1;i<5;i++){switch(i){case0:case3:a+=1;case1:case2:a+=2;default:a+=3;}printf(“%d”,a);}A.19B.18C.6D.8

19.以下函數(shù)不能用于向文件中寫入數(shù)據(jù)的是()。

A.hellB.fwriteC.fputcD.fprintf

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

A.在switch語(yǔ)句中,不一定使用break語(yǔ)句

B.break語(yǔ)句只能用于switch語(yǔ)句

C.break語(yǔ)句必須與switch語(yǔ)句中的case配對(duì)使用

D.在switch語(yǔ)句中必須使用default

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

main()

{inta=10;

a=(3*5,a+4);printf("a=%d\n",a);

}

22.在程序設(shè)計(jì)階段應(yīng)該采取______和逐步求精的方法,把一個(gè)模塊的功能逐步分解,細(xì)化為一系列具體的步驟,繼而用某種程序設(shè)計(jì)語(yǔ)言寫成程序。

23.結(jié)構(gòu)化設(shè)計(jì)主要分為系統(tǒng)設(shè)計(jì)和模塊設(shè)計(jì),【】的任務(wù)是決定系統(tǒng)的模塊結(jié)構(gòu)。

24.以下程序的運(yùn)行結(jié)果是______。

#include<stdio.h>

main()

{FILE*fp;inta[10]={1,2,3,0,0},i;

fp=fopen("d2.dat","wb");

fwtite(a,sizeof(int),5,fp);

fwrite(a,sizeof(int),5,fp);

fclose(fp);

fp=fopen("d2.dat","rb");

fread(a,sizeof(int),10,fp);

fclose(fp);

for(i=0;i<10;i++)printf("%d",a[i]);

}

25.執(zhí)行以下程序,輸入-10的結(jié)果是【】,輸入5的結(jié)果是【】,輸入10的結(jié)果是

【】,輸入30的結(jié)果是【】。

#include<stdio.h>

main()

{

intx,c,m;

floaty;

scanf("%d",&x);

if(x<0)c=-1

elsec=x/10;

switch(c)

{

case-1;y=0;break;

case0;y=x;break;

case1;y=10;break

case2:

case3;y=-0.5*x+20;break;

default:y=-2;

}

if(y!=-2)printf("y=%f"\n",y);

elseprintf("error\n");

}

26.在軟件開發(fā)中,結(jié)構(gòu)化方法包括結(jié)構(gòu)化分析方法、結(jié)構(gòu)化設(shè)計(jì)方法和結(jié)構(gòu)化程序設(shè)計(jì)方法。詳細(xì)設(shè)計(jì)階段所采用的是【】方法。

27.以下程序運(yùn)行時(shí)若從鍵盤輸入:102030<回車>。輸出結(jié)果是()。

#include<stdio.h>

main()

{inti=0,j=0,k=0;

scanf("%d%*d%d",&i,&j,&k);printf("%d%d%d\n",i,j,k);

}

28.若x和y都是double型變量,且x的初值為3.0,y的初值為2.0,則表達(dá)式pow(y,fabs(x))的值為【】。

29.在C語(yǔ)言中,while和do…while循環(huán)的主要區(qū)別是______的循環(huán)至少被執(zhí)行一次。

30.語(yǔ)句“int(*ptr)();”的含義是______是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)。

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

#include<stdio.h>

main()

{staiccharb[]="Goodbye";

char*chp=&b[7];

while(--chp>=&b[0])putchar(*chp);

printf("\n");

}

32.設(shè)x和y均為int型變量,且x=1,y=2,則表達(dá)式double(1+x/y)的值為【】。

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

intx=0,y=0;

while(x<15)y++,x+=++y;

pfintf("%d,%d",y,x);

34.排序是計(jì)算機(jī)程序設(shè)計(jì)中的一種重要操作,常見的排序方法有插入排序、______和選擇排序。

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

#include<stdio.h>

main()

{intp[7]={11,13,14,15,16,17,18};

inti=0,j=0;

while(i<7&&p[i]%2==1)j+=p[i++];

prinff("%d\n",j);

36.以下函數(shù)用來在w數(shù)組中插入x。n所指向的存儲(chǔ)單元中存放w數(shù)組中字符個(gè)數(shù)。數(shù)組w中的字符已按從小到大的順序排列,插入后數(shù)組w中的字符仍有序。請(qǐng)?zhí)羁铡?/p>

voidfun(char*w,charx,int*n)

{inti,p;

p=0;

w[*n]=x;

while(x>w[p])p++;

for(i=*n;i>p;i--)w[i]=【】;

w[p]=x;

++*n;}

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

main()

{chars[]="9876",*p;

for(p=s;p<s+2;p++)printf("%s\n",p);

}

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

structNODE

{

inthum;

structNODE*next;

};

main()

{structNODEs[3]={{1,'\0'},{2,'\0'},{3,'\0'}},*p,*q,*r;

intsum=0:

s[0].next=s+1;

s[1].next=s+2;

s[2].next=s:

p=s;

q=p->next;

r=q->next;

sum+=q->nexs->num;

sum+=r>next->next->num:

prlntf("%d\n",sum;

}

39.設(shè)有以下結(jié)構(gòu)類型說明和變量定義,則變量a在內(nèi)存所占字節(jié)數(shù)是【】。

structstud

{charnum[6];

mts[4];

doubleave;

}a,*p;

40.軟件維護(hù)活動(dòng)包括以下幾類:改正性維護(hù)、適應(yīng)性維護(hù)、【】維護(hù)和預(yù)防性維護(hù)。

三、1.選擇題(20題)41.有以下程序:#include<sldio.h>main(){intx=0,y=5,z=3;while(z-->0&&++x<5)y=y-1;printf("%d,%d,%d\n",x,y,z);}程序執(zhí)行后的輸出結(jié)果是()。

A.3,2,0B.3,2,-1C.4,3,-1D.5,-2,-5

42.視圖設(shè)計(jì)一般有3種設(shè)計(jì)次序,下列不屬于視圖設(shè)計(jì)的是______。

A.自頂向下B.由外向內(nèi)C.由內(nèi)向外D.自底向上

43.下列描述中,不是線性表順序存儲(chǔ)結(jié)構(gòu)特征的是

A.不便于插入和刪除B.需要連續(xù)的存儲(chǔ)空間C.可隨機(jī)訪問D.需另外開辟空間來保存元素之間的關(guān)系

44.以下敘述中正確的是_____。A.用C程序?qū)崿F(xiàn)的算法必須要有輸入和輸出操作

B.用C程序?qū)崿F(xiàn)的算法可以沒有輸出但必須要輸入

C.用C程序?qū)崿F(xiàn)的算法可以沒有輸入但必須要有輸出

D.用C程序?qū)崿F(xiàn)的算法可以既沒有輸入也沒有輸出

45.有以下程序:#include<stdio.h>inta=1;intfun(intC){staticinta=2;c=c+1;return(a++)+c;}main(){inti,k=0;for(i=0;i<2;i++){inta=3;k+=f(A);}k+=a;printf("%d\n",k);}程序的運(yùn)行結(jié)果是()。

A.14B.15C.16D.17

46.下列程序的輸出結(jié)果是______。main(){char*s="1221";intk=0,a=0,b=0;do{if(k%2==0){a=a+s[k]-'0';continue;}b=b+s[k]-'0';}while(s[++k]);printf("k=%da=%db=%d\n",k,a,b);}

A.k=3a=4b=3B.k=3a=3b=3C.k=4a=3b=3D.k=4a=2b=3

47.下面程序的輸出是______。main(){char*s="12134211";intv1=0,v2=0,v3=0,v4=0,k;for(k=0;s[k];k++)switch(s[k]){default:v4++;case'1':v1++;case'3':v3++;case'2':v2++;}printf("v1=%d,v2=%d,v3=%d,v4=%d\n",v1,v2,v3,v4);}

A.v1=4,v2=2,v3=1,v4=1

B.v1=4,v2=9,v3=3,v4=1

C.v1=5,v2=8,v3=6,v4=1

D.v1=8,v2=8,v3=8,v4=8

48.在以下給出的表達(dá)式中,與while(E)中的(E)不等價(jià)的表達(dá)式是()。

A.(!E==0)B.(E>0‖E<O)C.(E==0)D.(E!=0)

49.有以下程序:mam(){inti=10,j=1;printf("%d,%d\n",i--,++j);}執(zhí)行后輸出的結(jié)果是()。

A.9,2B.10,2C.9,1D.10,1

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

A.一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度也必定大

B.一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定小

C.一個(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定小

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

51.有以下程序

#include<stdio.h>

main()

{ints[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;

for(i=0;i<12;i++)c[s[i]]++;

for(i=1;i<5;i++)printf("%d",c[i]);

printf("\n");

}

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

A.1234B.2344C.4332D.1123

52.對(duì)于長(zhǎng)度為n的線性表,在最壞的情況下,下列各排序法所對(duì)應(yīng)的比較次數(shù)中正確的是______。

A.冒泡排序?yàn)閚/2B.冒泡排序?yàn)閚C.快速排序?yàn)閚D.快速排序?yàn)閚(n-1)/2

53.有定義:intx,y;若要通過scanf("%d,%d",&x,&y);使變量x得到數(shù)值11,變量y得到數(shù)值12,下面四組輸入形式中,錯(cuò)誤的是()。

A.1112<回車>B.11,12<回車>C.11,12<回車>D.11,<回車>12<回車>

54.有如下函數(shù)調(diào)用語(yǔ)句func(rec1,rec2+rec3,(rec4,rec5));該函數(shù)調(diào)用語(yǔ)句中,含有的實(shí)參個(gè)數(shù)是______。

A.3B.4C.5D.有語(yǔ)法錯(cuò)誤

55.以下不能正確計(jì)算代數(shù)式sm2()值的C語(yǔ)言表達(dá)式是

A.1/3*sin(1/2)*sin(1/2)

B.sin(0.5)*sin(0.5)/3

C.pow(sin(0.5),2)/3

D.1/3.0*pow(sin(1.0/2),2)

56.下面選項(xiàng)中不屬于面向?qū)ο蟪绦蛟O(shè)計(jì)特征的是______。A.繼承性B.多態(tài)性C.類比性D.封裝性

57.已有定義:inti,a[10],*p;則合法的賦值語(yǔ)句是()。

A.p=100;B.p=a[5];C.p=a[2]+2;D.p=a+2;

58.下面四個(gè)選項(xiàng)中,均是不合法的用戶標(biāo)識(shí)符的選項(xiàng)是()。

A.AP_0doB.floatla0_AC.b-agotointD._123tempint

59.設(shè)有如下定義:structsk{intn;floatx;}data,*p;若要使p指向data中的n域,正確的賦值語(yǔ)句是

A.p=&data.n;

B.*p=data.n;

C.p=(structsk*)&data.n;

D.p=(structsk*)data.n:

60.以下程序的輸出結(jié)果是()。main(){inta=-1,b=4,k;k=(++a<0)&&!(b--<=0);printf("%d%d%d\n"m,k,a,b);}

A.104B.103C.3D.4

四、選擇題(20題)61.

62.有以下程序(strcat函數(shù)用于連接兩個(gè)字符串):

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

A.U-KB.ABCDE\0FG\0UKC.ABCDUKD.EFGUK

63.有以下程序

#defineN15

fun(inta[],intn,intm)

{inti,j;

for(i=m;i>=n;i--)

a[i+1]=a[i];

}

main()

{inti,a[N]={1,2,3,4,5,6,7,8,9,10};

fun(a,3,7);

for(i=3;i<8;i++)

printf("%d",a[i]);

}

程序的運(yùn)行結(jié)果是A.A.45678

B.44567

C.45567

D.45677

64.有以下程序:

若運(yùn)行時(shí)輸入:246<;回車>;,則輸出結(jié)果為()。

A.204B.200C.240D.246

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

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

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

C.用c語(yǔ)言編寫的程序稱為源程序,它以ASCIl代碼形式存放在一個(gè)文本文件中

D.c語(yǔ)言源程序經(jīng)編譯后生成后綴為.obj的目標(biāo)程序

66.若有定義語(yǔ)句:“intyear=2009,*p=&year;”,以下不能使變量year中的值增至2010的語(yǔ)句是()。

A.*p+=1;

B.(*p)++;

C.++(*p);

D.*++P

67.算法分析最重要的目的是

A.找出數(shù)據(jù)結(jié)構(gòu)的合理性B.找出算法中輸入和輸出之間的關(guān)系

C.分析算法的易懂性和可靠性D.分析算法的效率以求改進(jìn)

68.

69.

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

#include<stdio.h>

main

{inta[2][3]={{1,2,3),{4,5,6}},(*p)[3],i;

p=a;

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

{if(i<2)

p[1][i]=p[1][i]一1;

else

p[1][i]=1;)

printf("%d\n",a[0][1]+a[1][1]+a[1][2]);}

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

70.

71.設(shè)有宏定義:

#defineIsDIV(k,n)((k%1"1==1)?1:O)且變量m已正確定義并賦值,則宏調(diào)用:

IsDIV(m,5)&&;IsDIV(m,7)為真時(shí)所要表達(dá)的是()。

A.判斷m是否能被5和7整除

B.判斷m被5和7整除是否都余l(xiāng)

C.判斷m被5或者7整除是否余1

D.判斷m是否能被5或者7整除

72.

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

A)C程序中的#include和#define行均是C語(yǔ)句,只是語(yǔ)法不同

B)除賦值運(yùn)算符外,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低

C)C程序中,j++;是賦值語(yǔ)句

D)C程序中,+、-、*、/、%號(hào)是算數(shù)運(yùn)算符,可用于整型和實(shí)型數(shù)的運(yùn)算

74.

75.以下敘述中錯(cuò)誤的是()。A.C程序在運(yùn)行過程中所有計(jì)算都以二進(jìn)制方式進(jìn)行

B.C程序在運(yùn)行過程中所有計(jì)算都以十進(jìn)制方式進(jìn)行

C.所有C程序都需要編譯鏈接無誤后才能運(yùn)行

D.C程序中整型變量只能存放整數(shù),實(shí)型變量只能存放浮點(diǎn)數(shù)

76.

77.下列字符數(shù)組初始化語(yǔ)句中,不正確的是()。A.A.charc[]='goodmorning';

B.charc[20]="goodmorning";

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

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

78.有以下程序:

程序運(yùn)行時(shí),輸入的值在哪個(gè)范圍才會(huì)有輸出結(jié)果()。

A.不等于10的整數(shù)

B.大于3且不等于l0的整數(shù)

C.大于3或等于l0的整數(shù)

D.小于3的整數(shù)

79.

80.

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

main

{intp[8]={11,12,13,14,15,16,17,18},i=0,j=0;

while(i++<7)

if(p[i]%2)j+=p[i];

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

}

A.42B.45C.56D.60

五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc的功能是:根據(jù)輸入的3個(gè)邊長(zhǎng)(整型值),判斷能否構(gòu)成三角形:若能構(gòu)成等邊三角形,則返回3;若是等腰三角形,則返回2;若能構(gòu)成三角形則返回1;若不能,則返回0。例如,輸入3個(gè)邊長(zhǎng)為3,4,5,實(shí)際輸入時(shí),數(shù)與數(shù)之間以Enter鍵分隔而不是逗號(hào)。請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:#include<stdio.h>#include<math.h>intproc(inta,intb,intc){if(a+b>c&&b+c>aa+c>b){if(a==b&&b==c)//****found****return1;elseif(a==b||b==c||a==c)return2;//****found****elsereturn3;}elsereturn0;}voidmain{inta,b,C,shape;printf("\nlnputa,b,C:");scanf("%d%d%d",&a,&b,&c);printf("\na=%d,b=%d,c=%d\n",a,b,c);shape=proc(a,b,c);printf("\n\nTheshape:%d\n",shape);}

六、程序設(shè)計(jì)題(1題)82.學(xué)生記錄由學(xué)號(hào)和成績(jī)組成,N名學(xué)生的數(shù)據(jù)已放入主函數(shù)中的結(jié)構(gòu)體數(shù)組中,請(qǐng)編寫函數(shù)fun,其功能是:把分?jǐn)?shù)最低的學(xué)生數(shù)據(jù)放入b所指的數(shù)組中,注意:分?jǐn)?shù)最低的學(xué)生可能不止一個(gè),函數(shù)返回分?jǐn)?shù)最低的學(xué)生人數(shù):

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

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

參考答案

1.C程序定義一個(gè)二維字符數(shù)組a,使用5個(gè)字符串對(duì)其初始化。另外定義字符指針數(shù)組P。for循環(huán)中,每次將數(shù)組a當(dāng)前下標(biāo)為i的字符串首地址賦給P[i],再求得P[i]的長(zhǎng)度賦給len,第1個(gè)printf輸出p[i]字符串的首字母,第2個(gè)printf輸出p[i]字符串下標(biāo)從len/2開始的子字符串。當(dāng)下標(biāo)i=0時(shí)輸出efg;當(dāng)下標(biāo)i=l時(shí)輸出acd;當(dāng)下標(biāo)i=2時(shí)輸出mopq;當(dāng)下標(biāo)i=3時(shí)輸出hjkl;當(dāng)下標(biāo)i=4時(shí)輸出rvwxyz。所以程序輸出:efgacdmopqhjklrvwxyz。本題答案為C選項(xiàng)。

2.A

3.C

4.B

5.D解析:程序設(shè)計(jì)的過程應(yīng)是先畫出流程圖,然后根據(jù)流程圖編制出程序,所以選項(xiàng)A錯(cuò)誤。程序中的注釋是為了提高程序的可讀性,注釋必須在編制程序的同時(shí)加入,所以,選項(xiàng)B和選項(xiàng)C錯(cuò)誤。綜上所述,本題的正確答案為選項(xiàng)D。

6.A

7.B對(duì)于標(biāo)識(shí)符的長(zhǎng)度(即一個(gè)標(biāo)識(shí)符允許的字符個(gè)數(shù)),C語(yǔ)言編譯系統(tǒng)是有規(guī)定的,即標(biāo)識(shí)符的前若干個(gè)字符有效,超過的字符將不被識(shí)別。不同的C語(yǔ)言編譯系統(tǒng)所規(guī)定的標(biāo)識(shí)符有效長(zhǎng)度是不同的。故本題答案為B選項(xiàng)。

8.D\n常用的過程設(shè)計(jì)工具有圖形工具(程序流程圖、N-S圖、PAD圖、HIPO)、表格工具(判定表)、語(yǔ)言工具(PDL)。

\n

9.D整型變量ch使用八進(jìn)制數(shù)020初始化,二進(jìn)制數(shù)為10000,右移一位結(jié)果為1000,使用%d輸出十進(jìn)制數(shù)為8。本題答案為D選項(xiàng)。

10.D本題考查if-else語(yǔ)句的使用。if-else語(yǔ)句可以在條件為“真”或?yàn)椤凹佟睍r(shí)執(zhí)行指定的動(dòng)作,由if引導(dǎo)條件為“真”時(shí)執(zhí)行的操作;由else引導(dǎo)條件為“假”時(shí)執(zhí)行的操作。else語(yǔ)句要與上面最近的if語(yǔ)句進(jìn)行匹配,如果要嵌套調(diào)用if-else語(yǔ)句,需要將嵌套部分用{}括起來,避免程序報(bào)錯(cuò)。題目中給出了一個(gè)if語(yǔ)句和一個(gè)if-else語(yǔ)句,if-else語(yǔ)句為第一個(gè)if語(yǔ)句的子語(yǔ)句。首先執(zhí)行外層if語(yǔ)句,執(zhí)行條件為x>y,由于x=1,y=2,故該條件為假,不執(zhí)行if的子語(yǔ)句,直接執(zhí)行語(yǔ)句printf("%d\\n",x++);,該語(yǔ)句先輸出x的值,然后進(jìn)行x++操作。x的初始值為1,輸出結(jié)果為1。

11.C宏定義只是做簡(jiǎn)單的替換,本題中SUB(a+b)*c=(a+b)-(a+b)*c=-20。故本題答案為C選項(xiàng)。

12.A在定義函數(shù)時(shí),函數(shù)名后面圓括號(hào)中的變量名稱為“形式參數(shù)”(簡(jiǎn)稱形參)。在主調(diào)函數(shù)中調(diào)用一個(gè)函數(shù)時(shí),函數(shù)名后面圓括號(hào)中的參數(shù)(可以是一個(gè)表達(dá)式)稱為“實(shí)際參數(shù)”(簡(jiǎn)稱實(shí)參)。C語(yǔ)言規(guī)定,實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只由實(shí)參傳給形參,而不能由形參傳給實(shí)參。在內(nèi)存中,實(shí)參單元與形參單元是不同的單元。故本題答案為A選項(xiàng)。

13.D

14.D解析:后序遍歷指在訪問根結(jié)點(diǎn)、遍歷左子樹與遍歷右子樹這三者中,道先遍歷左子樹,然后遍歷右子樹,最后訪問根結(jié)點(diǎn):并且遍歷左、右子樹時(shí),仍然先遍歷左子樹,然后遍歷右子樹,最后訪問根結(jié)點(diǎn)。

15.B所謂常量,是指在程序運(yùn)行的過程中,其值不能被改變的量。在C語(yǔ)言中,有整型常量、實(shí)型常量、字符常量和字符串常量等類型。選項(xiàng)A是字符串,需要使用雙引號(hào);選項(xiàng)C不是合法的常量形式;選項(xiàng)D為實(shí)型常量中的指數(shù)形式,但指數(shù)形式e(E)之前必須是數(shù)字,之后必須為整數(shù)。故本題答案為B選項(xiàng)。

16.BFunl是輸出局部變量的值,fun2是把全局變量的值改成3和4,所以輸出的結(jié)果是5634。

17.CC語(yǔ)言中沒有規(guī)定“if(表達(dá)式)語(yǔ)句”中的“表達(dá)式”的形式,其可以是任意合法的表達(dá)式。故本題答案為C選項(xiàng)。

18.A本題考查switch語(yǔ)句。當(dāng)i=1時(shí),執(zhí)行case1,因?yàn)闆]有遇到break語(yǔ)句,所以依次往下運(yùn)行,a=a+2=2,a=a+3=5;當(dāng)i=2時(shí),執(zhí)行case2,因?yàn)闆]有遇到break語(yǔ)句,所以依次往下運(yùn)行,a=a+2=7,a=a+3=10;當(dāng)i=3時(shí),執(zhí)行case3,a=a+1=11,因?yàn)闆]有遇到break語(yǔ)句,所以依次往下運(yùn)行,a=a+2=13,a=a+3=16;當(dāng)i=4時(shí),執(zhí)行default,a=a+3=19,結(jié)束循環(huán)。

19.Aftell是返回文件當(dāng)前指針。

20.Aswitch語(yǔ)句中不一定使用break語(yǔ)句,選項(xiàng)A正確;break語(yǔ)句除了用于switch語(yǔ)句,還可以用于循環(huán)語(yǔ)句中,選項(xiàng)B、C錯(cuò)誤;switch語(yǔ)句不一定需要使用default語(yǔ)句,選項(xiàng)D錯(cuò)誤。本題答案為A選項(xiàng)。

21.a=14a=14解析:逗號(hào)表達(dá)式的值是以逗號(hào)分隔的最后一個(gè)表達(dá)式的值。所以題目中的語(yǔ)句a=(3*5,a+4);就等價(jià)于a=a+4;。故本題輸出結(jié)果是a=14。

22.自頂向下自頂向下解析:在程序設(shè)計(jì)時(shí),應(yīng)先考慮總體,后考慮細(xì)節(jié),逐步使問題具體化,對(duì)復(fù)雜的問題,應(yīng)該設(shè)計(jì)一些子目標(biāo)作為過渡,上述方法概括為:自頂向下,逐步細(xì)化。

23.系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)解析:結(jié)構(gòu)化設(shè)計(jì)主要分為系統(tǒng)設(shè)計(jì)和模塊設(shè)計(jì)。系統(tǒng)設(shè)計(jì)決定系統(tǒng)的模塊結(jié)構(gòu),模塊設(shè)計(jì)具體考慮每個(gè)模塊內(nèi)部的算法、模塊輸入、輸出及模塊功能。

24.12300123001,2,3,0,0,1,2,3,0,0,解析:本題考查文件讀寫函數(shù)fread和fwrite的用法。fwrite函數(shù)將數(shù)組a的前5個(gè)元素輸出到文件fp中兩次,共10個(gè)字節(jié),再調(diào)用fread函數(shù)從文件fp中讀取這10個(gè)字節(jié)的數(shù)據(jù)到數(shù)組a中,此時(shí)數(shù)組a的內(nèi)容就變?yōu)閧1,2,3,0,0,1,2,3,0,0},最后的輸出結(jié)果為“1,2,3,0,0,1,2,3,0,0”。

25.05105

26.結(jié)構(gòu)化設(shè)計(jì)結(jié)構(gòu)化設(shè)計(jì)解析:在軟件開發(fā)中,結(jié)構(gòu)化方法包括結(jié)構(gòu)化分析方法、結(jié)構(gòu)化設(shè)計(jì)方法和結(jié)構(gòu)化程序設(shè)計(jì)方法。詳細(xì)設(shè)計(jì)階段所采用的是結(jié)構(gòu)化設(shè)計(jì)方法。

27.1030010300解析:本題的考點(diǎn)是C語(yǔ)言的scanf的“%*d”?!?*d”是在輸入流中跳過一個(gè)整數(shù),而讀入下一個(gè)整數(shù)。因此語(yǔ)句“scanf('%d%*d%d',&i,&j,&k);”在讀入10、20、30時(shí),將10讀入到i中,將20跳過,將30讀入到j(luò)中,而k沒有讀入數(shù),仍是初值的0。

28.88解析:fabs函數(shù)功能是求x的絕對(duì)值,計(jì)算結(jié)果為double型。pow功能是計(jì)算x的y次方的值,計(jì)算結(jié)果同樣為double型。所以本題表達(dá)式相當(dāng)于2.0的3.0次方,結(jié)果為8.000000。

29.do…whiledo…while解析:考查while和do…while循環(huán)的主要區(qū)別。while循環(huán)的控制出現(xiàn)在循環(huán)體之前,只有當(dāng)while后面的表達(dá)式的值為非零時(shí),才可能執(zhí)行循環(huán)體;在do…while構(gòu)成的循環(huán)體中,總是先執(zhí)行一次循環(huán)體,然后再求表達(dá)式的值,因此無論表達(dá)式的值是否為零,循環(huán)體至少要被執(zhí)行一次。

30.ptrptr解析:本題考查函數(shù)指針的概念。函數(shù)指針的定義格式是:類型標(biāo)識(shí)符(*指針變量名)()。注:“類型標(biāo)識(shí)符”為函數(shù)返回值的類型。

31.eybdooG

32.11解析:本題考查兩個(gè)知識(shí)點(diǎn):一是x/y的值為整型,即為0;二是數(shù)1是double類型。

33.8208,20解析:本題考查while循環(huán)和++運(yùn)算符的運(yùn)用。x=0符合條件x<15,則執(zhí)行y++,x+=++y后,y=1,x=0+2=2后y=2,符合條件繼續(xù)循環(huán),y=3,x=x+4=6后y=4,再循環(huán)y=5,x=x+6=6+6=12后,y=6,繼續(xù)循環(huán)y=7,x=x+8=12+8=20,此時(shí)y=8。

34.交換排序交換排序解析:所謂排序是指將一個(gè)無序序列整理成按值非遞減順序排列成的有序序列,常用的排序方法有:交換排序、插入排序和選擇排序。其中交換排序包括冒泡排序和快速排序,插入排序包括簡(jiǎn)單插入排序和希爾排序,選擇排序包括直接選擇排序和堆排序。

35.2424解析:本題關(guān)鍵是while循環(huán)。

當(dāng)i=0時(shí),滿足條件:i<7&&11%2==1,執(zhí)行j=0+11=11,i++,i為1;

當(dāng)i=1時(shí),滿足條件:i<7&&13%2=1,執(zhí)行j=11+13=24,i++,i為2;

當(dāng)i=2時(shí),不滿足條件:i<7&&14%2==1,循環(huán)結(jié)束。輸出j的值24。

36.w[i-1]w[i-1]解析:在用數(shù)組實(shí)現(xiàn)的有序序列中插入內(nèi)容,必須先尋找插入位置。插入位置找到后,需將插入位置之后的元素向后移動(dòng)一個(gè)位置,留出插入點(diǎn)。最后,將元素插入,并增加序列的元素個(gè)數(shù)。函數(shù)為了簡(jiǎn)化尋找插入位置循環(huán)的循環(huán)條件,預(yù)先在序列的最后置入插入值。插入位置之后的元素向后移動(dòng)一個(gè)位置必須從最后一個(gè)元素開始往前逆序移動(dòng),是將前一個(gè)元素向后移,所以在空框處應(yīng)填入w[i-1]。

37.98768769876\r\n876解析:指針是一種數(shù)據(jù)類型,這種數(shù)據(jù)類型的變量用來存放內(nèi)存中分配的存儲(chǔ)單元的首地址。指針的定義:

類型說明符*指針變量名;

38.55解析:主函數(shù)首先聲明了一個(gè)結(jié)點(diǎn)數(shù)組s[3],并分別初始化其成員num為1,2、3,而成員next全部被初始化為'\\0',也就是0。下面又用三條語(yǔ)句s[0].next=s+1;s[1].next=s+2;s[2].next=s;分別將三個(gè)結(jié)點(diǎn)指向其后面一個(gè)結(jié)點(diǎn),而最后一個(gè)結(jié)點(diǎn)指向笫1個(gè)結(jié)點(diǎn),構(gòu)造出一條單向循環(huán)鏈表。接下來用結(jié)點(diǎn)指針p=s即讓其指向s[0],然后讓q=p->next,即指向了s[1],r=-q->next即讓r指向s[2],然后讓一個(gè)累計(jì)變量sam累加q->next->hum和r->next->next->num,因?yàn)閝指向s[1)所以它的next指針指向的是s[2],故第1次累加的是s[2].num=3,而r指向的是s[2]所以它的next是s[0],s[0]的next指向s[1],故笫2次累加的是s[1].num=2。所以程序最終輸出結(jié)果為5。

39.2222解析:C語(yǔ)言里char類型占1個(gè)字節(jié),int類型占2個(gè)字節(jié),float類型占4個(gè)字節(jié),double類型占8個(gè)字節(jié),因此變量a在內(nèi)存中所占字節(jié)數(shù)=1*6+4*2+1*8=6+8+8=22。

40.完善性軟件維護(hù)活動(dòng)包括以下幾類:改正性維護(hù),適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù),完善性維護(hù)是指為了滿足用戶對(duì)軟件提出的新功能與性能要求,需要修改或再開發(fā)軟件,以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件的可維護(hù)性。

41.B解析:當(dāng)x=0,y=5,z=3時(shí),z->0&&++x<5成立,執(zhí)行y=y-1;此時(shí)y=5-1=4,z=z-1=2,x=x+1=1;條件z-->0&&++x<5仍然成立,繼續(xù)執(zhí)行y=y-1,此時(shí)y=y-1=3,z=1,x=2;條件z-->0&&++x<5仍然成立,繼續(xù)執(zhí)行y=y-1,此時(shí)y=y-1=2,z=0,x=3;條件不再成立,執(zhí)行條件判斷后x=3,y=2,z=-1。

42.B解析:視圖設(shè)汁一般有3種設(shè)計(jì)次序,它們分別是自頂向下、自底向上和由內(nèi)

向外,它們又為視圖設(shè)計(jì)提供了具體的操作方法,設(shè)計(jì)者可根據(jù)實(shí)際情況靈活掌握,可以

單獨(dú)使用也可混合使用。

注意:數(shù)據(jù)庫(kù)概念設(shè)計(jì)的過程:首先選擇局部應(yīng)用,再進(jìn)行局部視圖設(shè)計(jì),最后

對(duì)局部視圖進(jìn)行集成得到概念模式。

43.D解析:線性表的順序存儲(chǔ)是用一片連續(xù)的空間來存放數(shù)據(jù)元素,其特點(diǎn)是邏輯上相鄰的元素在物理位置上也相鄰。數(shù)據(jù)元素之間邏輯上的先后關(guān)系自動(dòng)隱含在物理位置的相鄰元素之中,因此,不需要另外開辟空間來保存元素之間的關(guān)系。

44.C解析:算法的特性中包括“有零個(gè)或多個(gè)輸入”及“有一個(gè)或多個(gè)輸出”這兩個(gè)特性。一個(gè)算法得到的結(jié)果就是算法的輸出,沒有輸出的算法是沒有意義的,所以一千算法必須至少有一個(gè)輸出。

45.A解析:本題考查的重點(diǎn)是對(duì)static變量以及全局變量的理解。static變量是函數(shù)或文件中的永久變量。本題中staticinta=2語(yǔ)句定義了一個(gè)static局部變量,編譯程序?yàn)槠渖捎谰么鎯?chǔ)單元,即調(diào)用函數(shù)fun時(shí),其值一直都保存著,而不是使用函數(shù)外所賦的值(盡管開頭定義了一個(gè)同名的全局變量)。在主函數(shù)中,for循環(huán)進(jìn)行兩次,第一次循環(huán)得f(3)=3+1+2=6,從而k+=f(3)=6,第二次循環(huán)由于static局部變量a變成了3,從而f(3)的值為7,故k+=f(3)=13,再執(zhí)行k+=a時(shí),此時(shí)a的值為全局變量,其值為1,故k的值為14,選項(xiàng)A是正確的。

46.C解析:將數(shù)字字符串中下標(biāo)值能被2整除的元素值(字符)轉(zhuǎn)換為數(shù)字累加到變量a中,將數(shù)字字符串中下標(biāo)值不能被2整除的元素值(字符)轉(zhuǎn)換為數(shù)字累加到變量b中,循環(huán)結(jié)束時(shí),a、b的值均為3,k是字符結(jié)束符的下標(biāo)值,為4。

47.C解析:當(dāng)switch后面括弧內(nèi)的表達(dá)式的值與某一個(gè)case后面的常量的表達(dá)式的值相等時(shí),就執(zhí)行此case后面的語(yǔ)句,若所有的case中的常量表達(dá)式的值都沒有與表達(dá)式的值匹配的,就執(zhí)行default后面的語(yǔ)句。

48.C解析:while(表達(dá)式)語(yǔ)句用來實(shí)現(xiàn)“當(dāng)型”循環(huán)結(jié)構(gòu),當(dāng)表達(dá)式為非0值時(shí),執(zhí)行while循環(huán)體語(yǔ)句。選項(xiàng)A)若E非。即為1,選項(xiàng)B)與選項(xiàng)D)的結(jié)果也為1,只有選項(xiàng)C)為0。

49.B解析:++、--運(yùn)算符在變量之前是先使變量的值加1或減1,然后再使用變量的值:如果在變量之后則先使用變量之前的值,再把變量的值加1或減1。顯然,程序中表達(dá)式“i--”的值為10,“++j”的值為2,所以最后輸出的值為10和2,所以,B選項(xiàng)為所選。

50.D解析:時(shí)間復(fù)雜度是指一個(gè)算法執(zhí)行時(shí)間的相對(duì)度量;空間復(fù)雜度是指算法在運(yùn)行過程中臨時(shí)占用所需存儲(chǔ)空間大小的度量。人們都希望選擇一個(gè)既省存儲(chǔ)空間、又省執(zhí)行時(shí)間的算法。然而,有時(shí)為了加快算法的運(yùn)行速度,不得不增加空間開銷;有時(shí)為了能有效地存儲(chǔ)算法和數(shù)據(jù),又不得不犧牲運(yùn)行時(shí)間。時(shí)間和空間的效率往往是一對(duì)矛盾,很難做到兩全。但是,這不適用于所有的情況,也就是說時(shí)間復(fù)雜度和空間復(fù)雜度之間雖然經(jīng)常矛盾,但是二者不存在必然的聯(lián)系。因此,選項(xiàng)A、B、C的說法都是錯(cuò)誤的。故本題的正確答案是D。

51.C解析:在for(i=0;i<12;i++)c[s[i]]++中,數(shù)組元素s[i]的值作為數(shù)組c的下標(biāo),當(dāng)退出循環(huán)時(shí),數(shù)組c的4個(gè)元素的值分別為4、3、3、2。

52.D解析:存最壞情況下,快速排序退化為冒泡排序,冒泡排序法的基本過程參見本題的理論鏈接。冒泡排序的每個(gè)元素都要與它前面的元素相比較,因此比較次數(shù)為(n-1)+(n-2)+…+1=n(n-1)/2。

53.A解析:格式輸入函數(shù)的一般形式為:

scanf(格式控制,地址表列)

在“格式控制”字符串中,除格式說明以外的其他字符為按原樣輸入的字符,在輸入數(shù)據(jù)時(shí)應(yīng)按原樣輸入這些字符。所以輸入時(shí),兩個(gè)數(shù)字之間的逗號(hào)是不可少的。

54.A解析:(rec4,rec5)是逗號(hào)表達(dá)式,它的值是rec5的值。所以該函數(shù)調(diào)用語(yǔ)句含有的實(shí)參個(gè)數(shù)是3。

55.A解析:當(dāng)運(yùn)算符“/”的左右兩邊運(yùn)算分量都是整數(shù)的時(shí)候,運(yùn)算結(jié)果也是一個(gè)整數(shù),如果除不凈則舍去小數(shù)部分。若兩個(gè)運(yùn)算分量有一個(gè)是實(shí)數(shù),才會(huì)返回真正除法上的實(shí)數(shù)結(jié)果。選項(xiàng)A中傳遞給sin()函數(shù)的參數(shù)表達(dá)式1/2計(jì)算出來的結(jié)果為整數(shù)0,所以不能正確計(jì)算出題目要求的值,而其余選項(xiàng)中,除號(hào)兩邊都至少有一個(gè)運(yùn)算分量是實(shí)數(shù),故應(yīng)該選擇A。

56.C解析:通常認(rèn)為,面向?qū)ο蠓椒ň哂蟹庋b性、繼承性、多態(tài)性幾大特點(diǎn)。就是這幾大特點(diǎn),為軟件開發(fā)提供了一種新的方法學(xué)。

封裝性:所謂封裝就是將相關(guān)的信息、操作與處理融合在一個(gè)內(nèi)含的部件中(對(duì)象中)。簡(jiǎn)單地說,封裝就是隱藏信息。這是面向?qū)ο蠓椒ǖ闹行?,是面向?qū)ο蟪绦蛟O(shè)計(jì)的基礎(chǔ)。

繼承性:子類具有派生它的類的全部屬性(數(shù)據(jù))和方法,而根據(jù)某一類建立的對(duì)象也都具有該類的全部,這就是繼承性。繼承性自動(dòng)在類與子類間共享功能與數(shù)據(jù),當(dāng)某個(gè)類作了某項(xiàng)修改,其子類會(huì)自動(dòng)改變,子類會(huì)繼承其父類所有特性與行為模式。繼承有利于提高軟件開發(fā)效率,容易達(dá)到一致性。

多態(tài)性:多態(tài)性就是多種形式。不同的對(duì)象在接收到相同的消息時(shí),采用不同的動(dòng)作。例如,一個(gè)應(yīng)用程序包括許多對(duì)象,這些對(duì)象也許具有同一類型的工作,但是卻以不同的做法來實(shí)現(xiàn)。不必為每個(gè)對(duì)象的過程取一過程名,造成復(fù)雜化,可以使過程名復(fù)用。同一類型的工作有相同的過程名,這種技術(shù)稱為多態(tài)性。

經(jīng)過上述分析可知,選項(xiàng)C的說法是錯(cuò)誤的。

57.D解析:本題考核的知識(shí)點(diǎn)是指針變量的賦值。本題中定義了一個(gè)整型數(shù)組a和一個(gè)整型指針變量P。選項(xiàng)A中將一個(gè)整型數(shù)賦值給一個(gè)指針變量,C語(yǔ)言規(guī)定,只能特地址賦給指針指針變量,故選項(xiàng)A不正確:選項(xiàng)B中a[5]為一數(shù)組元素,同樣不是一個(gè)地址,故選項(xiàng)B不正確;選項(xiàng)c中a[2]為一數(shù)組元素,同樣是一個(gè)整型數(shù)據(jù),不是個(gè)地址,故選項(xiàng)C不正確:選項(xiàng)D中數(shù)蛆名a代表數(shù)組首地址加2,代表第三個(gè)元素的地址,故選項(xiàng)D正確,所以,4個(gè)選項(xiàng)中選項(xiàng)D符合題意。

58.C解析:C語(yǔ)言規(guī)定的標(biāo)識(shí)符只能由字母、數(shù)字和下劃線3種字符組成,第一個(gè)字符必須為字母或下劃線,并且不能使用C語(yǔ)言中的關(guān)鍵字作為標(biāo)識(shí)符。選項(xiàng)C)中g(shù)oto和int是關(guān)鍵字,b-a中'-'不是組成標(biāo)識(shí)符的3種字符之一;選項(xiàng)D)中int是關(guān)鍵字,所以,均是不合法用戶標(biāo)識(shí)符的選項(xiàng)是C)。

59.C解析:本題主要考查了結(jié)構(gòu)體變量引用成員數(shù)據(jù)的方法,主要有以下幾種:結(jié)構(gòu)體變量名.成員名或結(jié)構(gòu)體指針->成員名的方法來引用結(jié)構(gòu)體成員。

60.D解析:&&的優(yōu)先級(jí)高于=,先計(jì)算&&左側(cè)的表達(dá)式++a<0。先對(duì)a加1再與0比較大小,a=-1+1=0,++a<0為假即0,&&左側(cè)的表達(dá)式的值為0,不再計(jì)算&&右側(cè)的表達(dá)式的值,因此b的值不變?nèi)匀粸?,整個(gè)邏輯表達(dá)式的值為0,則k被賦值為0。輸出的結(jié)果為004。

61.D

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

63

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論