2021年貴州省畢節(jié)地區(qū)全國計算機等級考試C語言程序設(shè)計重點匯總測試卷(含答案)_第1頁
2021年貴州省畢節(jié)地區(qū)全國計算機等級考試C語言程序設(shè)計重點匯總測試卷(含答案)_第2頁
2021年貴州省畢節(jié)地區(qū)全國計算機等級考試C語言程序設(shè)計重點匯總測試卷(含答案)_第3頁
2021年貴州省畢節(jié)地區(qū)全國計算機等級考試C語言程序設(shè)計重點匯總測試卷(含答案)_第4頁
2021年貴州省畢節(jié)地區(qū)全國計算機等級考試C語言程序設(shè)計重點匯總測試卷(含答案)_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2021年貴州省畢節(jié)地區(qū)全國計算機等級考試C語言程序設(shè)計重點匯總測試卷(含答案)學(xué)校:________班級:________姓名:________考號:________

一、單選題(20題)1.若f(n)=3n2+2n+1,則f(n)=()。

A.O(n2)B.O(n)C.O(2n)D.O(3n2)

2.數(shù)組A中,每個元素的長度為3個字節(jié),行下標i從1到8,列下標j從1到10,從首地址SA開始連續(xù)存放的存儲器內(nèi),該數(shù)組按行存放,元素A[8][5]的起始地址為()。

A.SA+141B.SA+144C.SA+222D.SA+225

3.已知一個有序表為(15,19,30,33,49,50,65,88,93,126,164),當(dāng)二分查找值為126的元素時,檢索成功需進行的比較次數(shù)為()。

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

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

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

5.當(dāng)輸入為"hello?"時,下面程序的執(zhí)行結(jié)果是()。#include<stdio.h>main{charc;c=getchar;while(c!=?){putehar(e);break;}}A.RvfsuB.hC.?D.hello

6.軟件調(diào)試的目的是______。

A.發(fā)現(xiàn)錯誤B.改正錯誤C.改善軟件的性能D.挖掘軟件的潛能

7.

8.以下關(guān)于字符串的敘述中正確的是()。

A.C語言中有字符串類型的常量和變量

B.兩個字符串中的字符個數(shù)相同時才能進行串符串大小的比較

C.可以用關(guān)系運算符對字符串的大小進行比較

D.空串一定比空格打頭的字符串小

9.程序中已構(gòu)成如下不帶頭節(jié)點的單向鏈表結(jié)構(gòu),指針變量s、p、q均已正確定義,并用于指向鏈表節(jié)點,指針變量s總是作為指針指向鏈表的第1個節(jié)點。若有以下程序段:q=s;s=s->next;p=s;while(p->next)p=p->next;p->next=q;q->next=NULL;該程序段實現(xiàn)的功能是()。

A.刪除尾節(jié)點B.使尾節(jié)點成為首節(jié)點C.刪除首節(jié)點D.使首節(jié)點成為尾節(jié)點

10.若已定義:inta[]={0,1,2,3,4,5,6,7,8,9},*p=a,I;其中0≤i≤9,則對a數(shù)組元素不正確的引用是()

A.a[p-a]B.*(&a[i])C.p[i]D.a[10]

11.數(shù)據(jù)庫的故障恢復(fù)一般是由()來執(zhí)行恢復(fù)

A.電腦用戶B.數(shù)據(jù)庫恢復(fù)機制C.數(shù)據(jù)庫管理員D.系統(tǒng)普通用戶

12.設(shè)散列表中m個存儲單元,散列函數(shù)為H(key)=key%p,p是最好選擇()。

A.小于等于m的最大奇數(shù)B.小于等于m的最大素數(shù)C.小于等于m的最大偶數(shù)D.小于等于m的最大合數(shù)

13.一個隊列的入隊序列是1,2,3,4,則隊列的輸出序列是()。

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

14.

15.下列程序的執(zhí)行結(jié)果是______。#include<stdio.h>unionun{inti;charc[2};};voidmain(){unionunx;x.c[0]=10;x.c[1]=1;printf("\n%d",x.i);}

A.266B.11C.265D.138

16.

17.現(xiàn)在有16枚外形相同的硬幣,其中一枚是假幣,且已知假幣比真幣重量輕。先給定一架沒有砝碼的天平,問至少需要多少次稱量才能找到這枚假幣?

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

18.選出任何情況下都不引起二義性的宏定義()。

A.#definePOWER(x)x*x

B.#definePOWER(x)((x)*(x))

C.#definePOWER(x)(x*x)

D.#definePOWER(x)(x)*(x)

19.有以下程序段:

以下選項中表達式的值為11的是()。

A.

B.

C.

D.

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

B.一個C語言程序只能實現(xiàn)一種算法

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

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

二、2.填空題(20題)21.若a的值為1,則表達式!a‖++a的值是______。

22.在面向?qū)ο蠓椒ㄖ校愔g共享屬性和方法的機制稱為______。

23.以下程序段打開文件后,先利用fseek函數(shù)將文件位置指針定位在文件末尾,然后調(diào)用ftell函數(shù)返回當(dāng)前文件的具體位置,從而確定文件長度,請?zhí)羁铡?/p>

FILE*myf;longfl;

myf=【】("test.t","rb”);

fseek(myf,()SEEK_END);fl+ftell(myf);

fclose(myf);

printf("%ld\n",fl);

24.函數(shù)check用來判斷字符串s是否是“回文”(順讀和倒讀都一樣的字符串為“回文”,如abeba)。是則函數(shù)返回值1,否則返回值0,請?zhí)羁铡?/p>

intcheck(char*s)

{

char*p1,*p2;intn;

n=strlen(s);

p1=s;

p2=【】;

while(p1<p2)

{

if(*p1!=*p2)break;

else{p1++;p2--;}

}

if(【】)return0;

elsereturn1;

}

25.有以下程序

main()

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

y=y+z;x=x+y;

printf("%d",x<y?y:x);

printf("%d",x<y?x++:y++);

printf("%d",x);

printf("%d",y);

}

運行結(jié)果是【】

26.軟件測試中路徑覆蓋測試是整個測試的基礎(chǔ),它是對軟件【】進行測試。

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

main()

{chars[]="abcdef";

s[3]='\0';

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

}

28.已知a為8位二進制數(shù),要想通過ab運算使a的低5位變反(即0變1,1變0),高3位不變,b的值應(yīng)為【】。

29.表示""整數(shù)x的絕對值大于5""時值為""真""的C語言表達式是【】。

30.以下函數(shù)用來求出兩整數(shù)之和,并通過形參將結(jié)果傳回,請?zhí)羁铡?/p>

voidfunc(intx,inty,【】z)

{*z=x+y;}

31.有以下程序:

intfa(intx){returnx*x;}

intfb(intx){returnx*x*x;}

intf(int(*f1)(),int(*f2)(),(intx)

{returnf2(x)-f1(x);}

main()

{inti;i=f(fa,fb,2);printf("%d\n",i);}

程序運行后,輸出結(jié)果是【】。

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

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

34.若有定義語句chars[100],d[100];intj=0,i=0;且s中已賦字符串,請?zhí)羁找詫崿F(xiàn)拷貝。(注:不使用逗號表達式)

whi1e()s[i]){d[j]=【】:j++;}

d[j]=0;

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

main()

{chara[]="Language",b[]="Programe";

char*p1,*p2;

intk;

p1=a;p2=b;

for(k=0;k<=7;k++)

if(*(p1+k)==*(p2+k))printf("%c,*(p1+k));

}

36.下面程序的輸出結(jié)果是()。#include<stdio.h>main(){staticchara[]="china";char*ptr=a;while(*ptr){printf("%c",*ptr-32);ptr++;}}

37.最簡單的交換排序方法是______。

38.度為10的線性表進行冒泡排序,最壞情況下需要比較的次數(shù)為______。

39.執(zhí)行下列語句段后,x的值是______。

int*p,x;

x=100;

p=&x;

x=*p+50;

40.下列程序執(zhí)行后輸出的結(jié)果是【】。

f(intA)

{staticc=0;

c=a+c++;

return(c);

}

main()

{inta=2,i,k;

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

k=f(a++);

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

}

三、1.選擇題(20題)41.a、b和c都是int型變量,且a=3,b=4,c=5,則下面的表達式中,值為0的表達式是()

A.'a'&&'b

B.a<=b

C.ab+c&&b-c

D.!((a<b)&&!c1)

42.下列程序的運行結(jié)果是______。voidfun(int*a,int*B){int*k;k=a;a=b;b=k;}main(){inta=3,b=6,*x’&a,*y’&b;fun(x,y);printf("%d%d",a,B);}

A.63B.36C.編譯出錯D.0

43.用十六進制的地址碼給存儲器的字節(jié)編址,其地址編號從0000到FFFF,則該存儲器的容量為()

A.1MBB.256KBC.64KBD.640KB

44.設(shè)有定義:10ngx=-123456L,則以下能夠正確輸出變量x值的語句是()。

A.printf("x=%d\n",x);

B.printf("x=%1d\n",x);

C.peintf("x=%8dL\n",x);

D.printf('x=%LD\n",x);

45.下面程序main(){intx=32;printf("%d\n",x=x<<1);}的輸出是______。

A.100B.160C.120D.64

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

A.PADB.PFDC.N-SD.DFD

47.若變量c是char類型,能正確判斷出c為小寫字母的表達式是()

A.'a'<=c<='2'

B.(c>='a')||(c<='z')

C.('a'<=c)and('z'>=c)

D.(c>='a')&&(c<='z')

48.下列敘述中,正確的是

A.用E-R圖能夠表示實體集間一對一的聯(lián)系、一對多的聯(lián)系和多對多的聯(lián)系

B.用E-R圖只能表示實體集之間一對一的聯(lián)系

C.用E-R圖只能表示實體集之間一對多的聯(lián)系

D.用E-R圖表示的概念數(shù)據(jù)模型只能轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型

49.線性表若采用鏈式存儲結(jié)構(gòu)時,要求內(nèi)存中可用存儲單元的地址()

A.必須是連續(xù)的B.部分地址必須是連續(xù)的C.一定是不連續(xù)的D.連續(xù)不連續(xù)都可以

50.設(shè)有以下函數(shù)f(inta){intb=0;staticintc=3;b++;c++;return(a+b+c);}如果在下面的程序中調(diào)用該函數(shù),則輸出結(jié)果是______。main(){inta=2,i;for(i=0;i<3;i++)printf("%d\n"f(a));}

A.789B.7911C.71013D.777

51.有如下程序main(){inti,sum;for(i=1;i<=3;sum++)sum+=i;printf("%d\n",sum);}該程序的執(zhí)行結(jié)果是______。

A.6B.3C.死循環(huán)D.0

52.設(shè)有如下定義structss{charname[10];intage;,charsex;}std[3],*p=std;下面各輸入語句中錯誤的是

A.scanf("%d",&(*p).age);

B.scanf("%s",&);

C.sean("%c",&std[0].sex);

D.scanf("%c",&(p->sex));

53.在C語言中,整數(shù)65534在存儲單元中的存儲情況是()

A.1111111111111111

B.1000000000000010

C.0111111111111111

D.1111111111111110

54.以下選項中合法的用戶標識符是A.longB._2TestC.3DmaxD.A.dat

55.若x是int型變量,且有下面的程序段:for(x=3;x<6;x++)printf((x%2)?("**%d"):("##%d\n"),x);此程序段的輸出結(jié)果是()。

A.**3##4**5B.##3**4##5C.##3**4##5D.**3##4**5

56.在C語言中,形參的缺省存儲類是

A.autoB.registerC.staticD.extern

57.在軟件生產(chǎn)過程中,需求信息的來源是()

A.程序員B.項目經(jīng)理C.設(shè)計人員D.軟件用戶

58.有以下程序,其中函數(shù)f的功能是將多個字符串按字典順序排序#include<string,h>voidf(char*p[],intn){char*t;inti,j;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(strcmp(p[i],p[j])>0){t=p[i];p[i]=p[j];p[j]=t;}}main(){char*p[5]={"abc","aabdfg","abbd","dcdbe","cd"};f(p,5);printf("%d\n"。strlen(p[1]));}程序運行后的輸出結(jié)果是

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

59.下列敘述中,不屬于測試的特征的是

A.測試的挑剔性B.完全測試的不可能性C.測試的可靠性D.測試的經(jīng)濟性

60.若有定義intx,y;,并已正確給變量賦值,則以下選項中與表達式(x-y)?(x++):(y++)中的條件表達式(x-y)等價的是()。

A.(x—y>0)B.(x-y<0)C.(x-y<0||x-y>0)D.(x-Y==0)

四、選擇題(20題)61.相對于數(shù)據(jù)庫系統(tǒng),文件系統(tǒng)的主要缺陷有數(shù)據(jù)關(guān)聯(lián)差、數(shù)據(jù)不一致性和()。

A.可重用性差B.安全性差C.非持久性D.冗余性

62.

63.

64.有以下程序程序運行后的輸出結(jié)果是()

A.一20B.一l2C.0D.10

65.

66.

67.下列關(guān)于棧的敘述正確的是()。

A.棧按“先進先出”組織數(shù)據(jù),B.棧按“先進后出”組織數(shù)據(jù)C.只能在棧底插入數(shù)據(jù)D.不能刪除數(shù)據(jù)

68.

69.

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

A.ABCDE\0FG\OUKB.ABCDUKC.UKD.EFGUK

70.

71.若二維數(shù)組a有m列,則在a[i][j]前的元素個數(shù)為()。

A.i*m+j-1B.i*m+jC.J*m+iD.i*m+j+1

72.c源程序中不能表示的數(shù)制是()。

A.二進制B.八進制C.十進制D.十六進制

73.執(zhí)行語句printf(“%u\n”,+12345)的輸出結(jié)果是()。

A.12345B.0C.-1D.非定值

74.有以下程序:

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

A.0B.9C.6D.8

75.

76.有以下程序:

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

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

77.

78.

79.以下程序運行后的輸出結(jié)果是()。

A.zB.0C.元素Ch[5]地址D.字符y的地址

80.有以下定義:

五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc()的功能是:根據(jù)整型形參n,計算如下公式的值。

例如,若n=12,則應(yīng)輸出0.618026。

請修改程序中的錯誤,使它能得出正確的結(jié)果。

注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。

試題程序:

六、程序設(shè)計題(1題)82.下列程序判斷字符串s是否對稱,對稱則返回1,否則返回0;如f("abba")返回1,f("abab")返回0。

參考答案

1.A

2.C

3.C

4.D

5.A本題考查getchar函數(shù)與putchar函數(shù),通過9etchar函數(shù)讀入字符,并通過putchar函數(shù)將字符逐個輸出,當(dāng)用戶輸入“?”時停止輸出,且c是一個字符變量只占一個字節(jié)。

6.B解析:在對程序進行測試時會發(fā)現(xiàn)錯誤,這就要進行程序調(diào)試(排錯)。程序調(diào)試活動由三部分組成:一是錯誤定位,根據(jù)錯誤的外部表現(xiàn)形式,確定程序中出錯的位置,找出錯誤的內(nèi)在原因;二是對程序進行修改,排除這個錯誤;三是進行回歸測試,防止引進新的錯誤。所以程序調(diào)試的目的就是診斷和改正程序中的錯誤。軟件調(diào)試不能改善軟件的性能,也不能挖掘軟件的潛能。

7.A

8.D解析:C語言中只有字符串常量而沒有字符串變量,故選項A不正確:字符串比較大小是以第1個不相同字符的大小為標準的,跟長度沒有關(guān)系,故選項B不正確:字符串比較大小除了使用庫函數(shù)stremp()以外,就只能靠自己寫代碼來實現(xiàn)了,而不能通過關(guān)系運算符來比較大小,因為字符串在表達式中相當(dāng)于coostchar*,即常字符指針,代表的是字符串的首地址,關(guān)系運算符會將兩個字符串的首地址值比較大小,這是毫無意義的。所以選項C也不正確??沾拈L度為0,而以空格打頭的字符串的長度至少為1,故選項D正確,本題應(yīng)該選擇D。

9.D程序中,指針s指向了它的下一個節(jié)點。題目中說明了s總是指向鏈表的第1個節(jié)點。然后while循環(huán)找到鏈表的最后一個元素,最后一個元素指向了之前鏈表的頭節(jié)點,之前頭節(jié)點指向了空節(jié)點。所以本題實現(xiàn)的是使首節(jié)點成為尾節(jié)點。故本題答案為D選項。

10.D解析:通常,引用一個數(shù)組元素可以用下標法,如a[P-a]形式,或指針法,如*(&a[i])的形式。本題中a[9]=9,a[10]顯然超出了數(shù)組范圍,注意,數(shù)組的下標是從0開始的。

11.CC)【解析】數(shù)據(jù)庫一旦發(fā)生故障,需要及時進行故障恢復(fù),并由數(shù)據(jù)庫管理員負責(zé)執(zhí)行故障恢復(fù)。

12.B

13.B

14.D

15.A解析:由于本題定義的是共用體,所以成員表列中的整型變量x與字符數(shù)組c共占用同一個存儲單元,且此存儲單元為2個字節(jié),通常c[0]位于低字節(jié),c[1]位于高字節(jié),所以x.i的值為266。

16.A

17.A

18.B解析:引起帶參數(shù)宏的二義性主要有兩個方面:一是,參數(shù)之間因運算符優(yōu)先級不確定而帶來的二義性。例如本題的選項A),若程序中使用POWER(a+b),會展開為a+b*a+b,這樣就會先計算b*a的值,然后再加一個a和一個b,產(chǎn)生二義性。杜絕這種二義性的方法是在宏定義的每個參數(shù)外加上圓括號以保證總是先計算每個參數(shù)的值,就好像本題的選項D)那樣。另一個是,整個宏所代表的表達式因運算符優(yōu)先級不確定而帶來的二義性。例如本題的選項D),若程序中使用a/POWER(b),會展開為a/(b)*(b),這樣就會先計算a/b的值,然后再乘以b,產(chǎn)生二義性。杜絕這種二義性的方法是對整個宏定義加一個圓括號,就好像本題的選項B)那樣。故選項B)在任何情況下都不會引起二義性,應(yīng)該選B。

19.C→的運算優(yōu)先級比++高,此時,pt→x=10,執(zhí)行自加運算后為11。

20.B[解析]在一個C語言程序中可以進行多種算法的實現(xiàn),對算法的個數(shù)沒有規(guī)定,所以B)錯誤。

21.11解析:邏輯運算中,非1即0,非0即1,!a=0,++a為邏輯1,所以0和1相或結(jié)果為1。

22.繼承繼承解析:在面向?qū)ο蟮某绦蛟O(shè)計方法中,某些屬性和方法是可以共享的,由于類從父類中繼承而來,這樣提高了軟件的可重用性。

23.fopenfopen解析:C語言中的文件分為:ASCII文件與二進制文件。文件在使用前打開,使用后要關(guān)閉。

打開文件的函數(shù)為:fopen(),調(diào)用形式為:fP=fopen(”文件名”,”使用文件方式”);

關(guān)閉文件的函數(shù)為:folose(),調(diào)用形式為:foclose(fp);其中fp為文件指針。

24.s+n-1p1<p2s+n-1\r\np1<p2解析:判斷是否“回文”字符串,應(yīng)該使用兩個字符型指針,一個從前往后遍歷字符串,另一個從后往前遍歷字符串,直到它們中途相遇,如果每次兩個指針所指的字符都相同,則為“回文”字符串。程序中已經(jīng)使p1=s,即指向字符串的第一個字符了,所以p2應(yīng)該指向s的最后一個字符,故第一空應(yīng)填s+n-1。比較兩個指針時,如果有一次不相同,則跳出循環(huán),因為此時已可肯定不是“回文”字符串。如果是while循環(huán)的條件p1<p2不滿足時自然結(jié)束的循環(huán),則每次比較都是相同的,兩個指針是中途相遇了才結(jié)束比較。兩種情況的區(qū)別就是pl<p2是否成立。故第二空應(yīng)該填p1<p2。

25.3233

26.結(jié)構(gòu)結(jié)構(gòu)解析:路徑測試是白盒測試方法中的—種,它要求對程序中的每條路徑最少檢查一次,目的是對軟件的結(jié)構(gòu)進行測試。

27.abcabc解析:字符串的結(jié)束標記'\\0',當(dāng)輸出一個存放在字符數(shù)組中的字符串時,只需輸出到'\\0'為止,而不管其后有什么數(shù)據(jù)。本題給字符數(shù)組s的元素s[3]賦值為'\\0',故只能輸出3個字符“abc”。

28.1F1F解析:11=0,01=1,實現(xiàn)了按位的求反。

29.x>5||x<-5x<-5或x<-5||x>5x>5||x<-5,x<-5或x<-5||x>5解析:要使整數(shù)x的絕對值大于5,則x大于5或x小于5,用C語言表示即為:x>5||x<-5或者x<-5||x>5。故本題答案為;x>5||x<-5或者x<-5||x>5。

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

31.44解析:在主函數(shù)中調(diào)用函數(shù)f,函數(shù)f有三個參數(shù),形參f1與f2分別是兩個指向函數(shù)的指針。在f中執(zhí)行f2(x)-f1(x),實際上是執(zhí)行了fb(2)-fa(2),故執(zhí)行i=(fa,fb,2)后i的值為23-22=4。

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

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

34.s[i++]s[i++]解析:本題中為了能實現(xiàn)字符串的拷貝,需要使字符數(shù)組s從頭到尾依次遍歷其所有元素。本題應(yīng)使用i的自增后置來實現(xiàn)。

35.gae

36.CHINA

37.冒泡排序冒泡排序解析:交換排序是指借助數(shù)據(jù)元素之間的互相交換進行排序的一種方法。冒泡排序是一種最簡單的交換排序方法,它是通過相鄰元素之間的相互交換逐步將線性表變成有序。

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

39.150150解析:本題先給變量x賦初始值100,然后將指針p指向變量x,*p是取指針p所指地址的內(nèi)容,即100,所以x=100+50=150。

40.77解析:在程序執(zhí)行時,static變量僅初始化一次,下次使用時將使用上次保存的值。

41.D

42.B解析:本題中主函數(shù)里的x、y,fun函數(shù)里的a\\b\\k,這些都是指針,fun函數(shù)中只是將a、b這兩個指針交換了位置,而并沒有改變主函數(shù)中變量a、b的值。

43.C

44.B解析:x為一個長整型的變量,而且是一個十進制的數(shù),它的輸出控制符是%1d,所以排除選項A和選項C;由于C語言中是區(qū)分大小寫的,1d中的d不能為大寫,故排除選項D。4個選項中B正確。

45.D解析:<<是C語言中規(guī)定的左移運算符,例如,a=a<<2,這個語句即是將a的二進制數(shù)左移兩位,左移一位相當(dāng)于該數(shù)乘于2,左移兩位相當(dāng)于該數(shù)乘以2的2次方。所以,x<<1=32*2=64。

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

47.D

48.A解析:兩個實體之間的聯(lián)系實際上是實體集間的函數(shù)關(guān)系,這種函數(shù)關(guān)系可以有下面幾種,即一對一的聯(lián)系、一對多(或多對一)的聯(lián)系和多對多的聯(lián)系;概念模型便于向各種模型轉(zhuǎn)換。由于概念模型不依賴于具體的數(shù)據(jù)庫管理系統(tǒng),因此,容易向關(guān)系模型、網(wǎng)狀模型和層次模型等各種模型轉(zhuǎn)換。

49.D解析:在鏈式存儲結(jié)構(gòu)中,存儲數(shù)據(jù)結(jié)構(gòu)的存儲空間可以不連續(xù),各數(shù)據(jù)接點的存儲順序與數(shù)據(jù)元素之間的邏輯關(guān)系可以不一致,而數(shù)據(jù)元素之間的邏輯關(guān)系是由指針域來確定的。

50.A解析:本題考查靜態(tài)變量的問題。函數(shù)f中c是靜態(tài)變量存放在靜態(tài)存儲區(qū),在程序的整個運行期間都不釋放占據(jù)的存儲單元。函數(shù)f被調(diào)用3次,調(diào)用過程如下。

第1次調(diào)用;a=2、b=0、c=3,執(zhí)行b++和c++后b=1、c=4,f(a)=a+b+c=2+1+4=7

第2次調(diào)用:a=2、b=0、c=4.執(zhí)行b++和c++后b=1、c=5,f(a)=a+b+c=2+1+5=8

第3次調(diào)用:a=2、b=0、c=5,執(zhí)行b++和c++后b=1、c=6,f(a)=a+b+c=2+1+6=9

所以輸出結(jié)果為選項A。

51.C解析:在循環(huán)過程中,i的值一直沒有被改變,所以這是一個死循環(huán)。

52.B解析:本題考核的知識點是結(jié)構(gòu)型數(shù)組的應(yīng)用。選項A中“&(*p).age”代表的是std[0]age的地址,是正確的,選項C也是正確的,選項D先用指針變量引用結(jié)構(gòu)型的成員sex,然后取它的地址,也是正確的,選項B中的“'是錯誤的引用,因為std是數(shù)組名,代表的是數(shù)組的首地址,地址沒有成員“name”。所以B選項為所選。

53.D

54.B解析:本題考查C語言標識符的命名.在C語言中,合法的標識符由字母,數(shù)字和下劃線組成,并且第一個字符必須為字母或者下劃線,long為C語言的保留字,不能作為用戶標識符,故選頃A錯誤.3Draax開頭的第一個為數(shù)字,而C語言規(guī)定,第一個字符必須為字母或者下劃線,故選項C錯誤;A.dat中的字符“.”不符合C語言中用戶標識符只能由字母、數(shù)字和下劃線組成的規(guī)定,故選項D錯誤.只有迭項B正確。

55.D解析:本題考查條件運算符。如果x%2非0,輸出**和循環(huán)變量的值;如果x%2為0,輸出##和循環(huán)變量的值。當(dāng)循環(huán)變量為3和5時,分別輸出**3和**5,當(dāng)循環(huán)變量為4時,輸出##4后換行。

56.A解析:本題考核的知識點是定義函數(shù)時形參的缺省存儲類。在C語言中,形參的缺省存儲類為auto。

57.DD)【解析】軟件需求是指用戶對目標軟件系統(tǒng)在功能、性能、設(shè)計約束等方面的要求,是由用戶提出的。

58.D解析:本題所說的字典順序是由f()函數(shù)中所調(diào)用的strcmp()函數(shù)對字符串大小的比較方法來決定的。strcmp()函數(shù)是依次對兩個參數(shù)所指字符串對應(yīng)位置上的字符兩兩進行比較,當(dāng)出現(xiàn)第一對不相同的字符時,即由這兩個字符的ASCII碼值的大小來決定整個字符串的大小。另外,根據(jù)f()函數(shù)中交換兩個元素的條件strcmp(p[i],p[j]>0可以看出,當(dāng)前面的元素大于后面的元素時,則交換兩個元素,即從小到大排序。所以數(shù)組最終排序的結(jié)果是'aabdfg','abbd','abc','cd','d

溫馨提示

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

評論

0/150

提交評論