2021年浙江省紹興市全國計算機等級考試C語言程序設計測試卷(含答案)_第1頁
2021年浙江省紹興市全國計算機等級考試C語言程序設計測試卷(含答案)_第2頁
2021年浙江省紹興市全國計算機等級考試C語言程序設計測試卷(含答案)_第3頁
2021年浙江省紹興市全國計算機等級考試C語言程序設計測試卷(含答案)_第4頁
2021年浙江省紹興市全國計算機等級考試C語言程序設計測試卷(含答案)_第5頁
已閱讀5頁,還剩28頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2021年浙江省紹興市全國計算機等級考試C語言程序設計測試卷(含答案)學校:________班級:________姓名:________考號:________

一、單選題(20題)1.

2.有以下程序.#include<stdio.h>main{charc1,c2,c3,c4,c5,c6;scanf("%c%c%c%c",&c1,&c2,&c3,&c4);c5=getchar;c6=getchar;putchar(c1);putchar(c2);printf("%c%c\n",c5,c6);}程序運行后,若從鍵盤輸入(從第l列開始)123<回車>45678<回車>程序運行后,若從鍵盤輸入(從第l列開始)123<回車>45678<回車>則輸出結果是()。A.1267B.1256C.1278D.1245

3.有以下程序:voidswap(char*x,char*y){chart;t=*x;*x=*y;*y=t;}main{char*s1="abe",*s2="123":swap(s1,s2);printf("%s,%s\n",s1,s2);}程序執(zhí)行后的輸出結果是()。A.123,abeB.abc.123C.1bc,a23D.321,cba

4.#define能作簡單的替代,用宏來替代計算多項式5*x*x+5*x+5的值的函數(shù)f,正確的宏定義語句為()。

A.#definef(x)5*x*x+5*x+5

B.#definef5*X*x+5*x+5

C.#definef(a)(5*a*a+5*a+5)

D.#define(5*x*x+5*x+5)f(x)

5.下列選項中,當x為大于1的奇數(shù)時,值為0的表達式是()。

A.x%2==1B.x/2C.x%2!=0D.x%2==0

6.一棵完全二叉樹中根結點的編號為1,而且23號結點有左孩子但沒有右孩子,則完全二叉樹總共有____個結點。

A.24B.45C.46D.47

7.C語言中函數(shù)返回值的類型是由()決定的。

A.return語句中的表達式類型B.調用該函數(shù)的主調函數(shù)類型C.定義函數(shù)時所指定的函數(shù)類型D.以上說法都不正確

8.算法的有窮性是指A.算法程序的運行時間是有限的

B.算法程序所處理的數(shù)據(jù)量是有限的

C.算法程序的長度是有限的

D.算法只能被有限的用戶使用

9.在軟件設計中,不屬于過程設計工具的是()。

A.PDLB.DFD圖C.PAD圖D.N—S圖

10.以下程序的輸出結果是()。

f(intb[],intm,intn)

{inti,s=0;

for(i=m;i<n;i=i+2)s=s+b[i];

returns;

}

voidmain()

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

x=f(a,3,7);

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

}A.A.10

B.18

C.8

D.15

11.有以下程序:#include<stdio.h>main(){chars[]={“012xy”;inti,n=0;for(i=0;s[i]|=0;i++)if(s[i]>=‘a(chǎn)’&&s[i]<=‘z’)n++;printf(“%d\n”,n);}程序的運行結果是()。

A.0B.2C.3D.5

12.以下選項中的表達式調用庫函數(shù)依次求-4.5的絕對值、-4.0的平方根值、30°角的正弦值和2的3次方值。正確的調用是()

A.abs(-4.5)B.sqrt(-4.0)C.sin(3.1416/6.0)D.paw(2.0,3.0)

13.若已定義:inta[9],*p=a;并在以后的語句中未改變p的值,不能表示a[1]地址的表達式是_______。

A.p+1B.a+1C.a++D.++p

14.目前以比較為基礎的內部排序方法中,其比較次數(shù)與待排序的記錄的初始排列狀態(tài)無關的是()

A.插入排序B.快速排序C.二分插入排序D.冒泡排序

15.下列程序的輸出結果是______。#include<stdio.h>main(){doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf("%d\n",d*y);}

A.3B.3.2C.0D.3.07

16.有以下程序:#include<stdio.h>main(){inta[3][3]={0,1,2,3,4,5,6,7,8},(*p)[3],i;p=a;for(i=0;i<3;i++){printf(“%d”,(*p)[i]);p++;}}程序的運行結果是()。

A.036B.012C.048D.147

17.對于哈希表,如果將裝填因子α定義為表中裝入的記錄數(shù)與表的長度之比,那么向表中加入新紀錄時,()

A.α的值隨時沖突次數(shù)的增加而遞減

B.α越大發(fā)生沖突的可能性越大

C.α等于1時不會再發(fā)生沖突

D.α低于0.5時不會發(fā)生沖突

18.設循環(huán)隊列的存儲空間為Q(1:35),初始狀態(tài)為front=rear=35。現(xiàn)經(jīng)過一系列入隊與退隊運算后,front=15,rear=15,則循環(huán)隊列中的元素個數(shù)為()。

A.20B.0或35C.15D.16

19.以下關于簡單程序設計的步驟和順序的說法中正確的是()。

A.確定算法后,整理并寫出文檔,最后進行編碼和上機調試

B.首先確定數(shù)據(jù)結構,然后確定算法,再編碼,并上機調試,最后整理文檔

C.先編碼和上機調試,在編碼過程中確定算法和數(shù)據(jù)結構,最后整理文檔

D.先寫好文檔,再根據(jù)文檔進行編碼和上機調試,最后確定算法和數(shù)據(jù)結構

20.下列定義數(shù)組的語句中錯誤的是()。

A.intnum[][3]={{1,2},3,4,5,6};

B.intnum[2][4]={{1,2},{3,4},{5,6}};

C.intnum[]={1,2,3,4,5,6};

D.intnum[][4]={1,2,3,4,5,6};

二、2.填空題(20題)21.一棵二叉樹第六層(根結點為第一層)的結點數(shù)最多為______個。

22.下列程序的輸出結果是【】。

intt(intx,inty,ntcp,intdp)

{cp=x*x+y*y;

dp=x*x-y*y;

}

main()

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

t(a,b,c,d);

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

}

23.表示“整數(shù)x的絕對值大于5”時值為“假”的C語言表達式是______。

24.若要使指針p指向一個double類型的動態(tài)存儲單元,請?zhí)羁铡?/p>

p=【】malloc(sizeof(double));

25.Jackson結構化程序設計方法是英國的M.Jackson提出的,它是一種面向______的設計方法。

26.下面程序段的輸出結果是【】。

intx=5;

do{printf("%d",x-=4);

}while(!(--x));

27.下面程序的功能是實現(xiàn)變量x、y內容交換,請?zhí)羁铡?/p>

#defineEXCHANGE(a,b,c){a=b;b=c;c=a;}

main()

{intx=10,y=8,z;

【】

printf("%d,%d",x,y);}

28.在面向對象方法中,類之間共享屬性和操作的機制稱為______。

29.以下程序運行后的輸出結果是【】。

#include<stdio,h>

main()

charc1,c2;

for(el='0',c2='9';e1<c2;c1++,c2--)printf("%c%c",c1,c2);

printf("\n");

}

30.下面程序是計算100以內能被4整除且個位數(shù)為4的所有整數(shù),請?zhí)羁铡?/p>

main()

{intm,n;

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

{n=m*10+4;

If(【】)continue;

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

31.若a的值為1,則表達式!a‖++a的值是______。

32.問題處理方案的正確而完整的描述稱為______。

33.以下程序運行后的輸出結果是【】。

#include<stdio,h>

main()

{inta=3,b=4,c=5,t=99;

if(b<a&&a<c)t=a;a=c;c=t;

if(a<e&&b<c)t=b;b=a;a=t;

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

}

34.設Y是int型變量,請寫出判斷Y為奇數(shù)的關系表達式【】。

35.下列程序的輸出結果是______。

#include<stdio.h>

sb(ints[],intb)

{staticintn=3;

b=s[n];

n--;

return(b);

}

main()

{ints[]={1,5,6,8};

inti,x=0;

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

{x=sb(s,x);

printf("%d",x);

}

printf("\n");

}

36.數(shù)據(jù)庫系統(tǒng)的三級模式分別為______模式、內部級模式與外部級模式。

37.數(shù)據(jù)庫管理系統(tǒng)常見的數(shù)據(jù)模型有層次模型、網(wǎng)狀模型和【】3種。

38.數(shù)據(jù)獨立性分為邏輯獨立性與物理獨立性。當數(shù)據(jù)的存儲結構改變時,其邏輯結構可以不變,所以,基于邏輯結構的應用程序不必修改,稱為【】。

39.媒體在計算機領域中的含義,是指存儲信息的實體和【】。

40.與結構化需求分析方法相對應的是【】方法。

三、1.選擇題(20題)41.數(shù)據(jù)的完整性是指數(shù)據(jù)的正確性、有效性和______。

A.可維護性B.獨立性C.安全性D.相容性

42.設有下列二叉樹:

對此二叉樹中序遍歷的結果是

A.ABCDEFB.DABECFC.BDAECFD.DBEFCA

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

A.線性鏈表是線性表的鏈式存儲結構B.棧與隊列是非線性結構C.雙向鏈表是非線性結構D.只有根節(jié)點的二叉樹是線性結構

44.在待排序的元素序列基本有序的前提下,效率最高的排序方法是()。A.A.冒泡排序B.選擇排序C.快速排序D.歸并排序

45.C語言庫函數(shù)fgets(str,n,fg)的功能是_______。

A.從中指向的文件中讀取長度n的字符串存入str指向的內存

B.從fp指向的文件中讀取長度不超過n-1的字符串存入str指向的內存

C.從fp指向的文件中讀取n個字符串存入str指向的內存

D.從sb讀取至多n個字符到文件fp

46.下面程序main(){intx=100,a=10,b=20,ok1=5,ok2=0;if(a<b)if(b!=15)if(!ok1)x=1;elseif(ok2)x=10;x=1;printf("%d\n",x);}的輸出是______。

A.-1B.0C.1D.不確定的值

47.關于printf()函數(shù)的返回值敘述正確的是

A.通常是本次調用中輸出字符的個數(shù)B.通常是輸出的第一個數(shù)值C.通常返回布爾值真D.通常返回非零值

48.下列合法的聲明語句是()。

A.int_abc=50;

B.doubleint=3+5e2.5;

C.longdo=1L:

D.float3_asd=3e-3;

49.數(shù)據(jù)流圖用于抽象地描述一個軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構成。下列圖符名標識的圖符不屬于數(shù)據(jù)流圖合法圖符的是()。

A.控制流B.加工C.數(shù)據(jù)存儲D.源和潭

50.下面程序的功能是輸出以下形式的金字塔圖案:****************main(){inti,j;for(i=1;i<=4;i++){ror(j=1;j<=4-i;j++)printf("");for(j=1;j<=______;j++)printf("*");printf("\n");}}在下劃線處應填入的是

A.iB.2*i-1C.2*i+1D.i+2

51.有以下程序段:charch;intk;ch='a';k=12;printf("%c,%d,",ch,ch,k);printf("k=%d\n",k);已知字符a的ASCⅡ十進制代碼為97,則執(zhí)行上述程序段后輸出的結果是()。

A.因變量類型與格式描述符的類型不匹配輸出無定值

B.輸出項與格式描述符個數(shù)不符,輸出為零值或不定值

C.a,97,12k=12

D.a,97,k=12

52.有以下程序:intf(inta){returna%2;}main(){ints[8]={1,3,5,2,4,6},i,d=0;for(i=0;f(s[i]);i++)d+=s[i];printf("%d\n",d);}程序運行后的輸出結果是()。

A.9B.11C.19D.21

53.有以下程序段:inta[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b;b=p[5];則b中的值是()。

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

54.數(shù)據(jù)庫設計包括兩個方面的設計內容,它們是()

A.概念設計和邏輯設計B.模式設計和內模式設計C.內模式設計和物理設計D.結構特性設計和行為特性設計

55.下列描述中,不是線性表順序存儲結構特征的是

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

56.以下程序的輸出結果是______。main(){printf("%d\n",NULL);}

A.0B.-1C.1D.不確定的值(因變量無定義)

57.有以下語句,則對a數(shù)組元素的引用不正確的是(0≤i≤9)()。

inta[10]={0,1,2,3,4,5,6,7,8,9},*P=a;

A.a[P-a]B.*(&a[i])C.P[i]D.*(*(a+i))

58.設有定義:intn=0,*p=&n,**q=&p;則下列選項中正確的賦值語句是()。

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

59.有以下程序intf(intn){if(n==1)return1;elsereturnf(n-1)+1;}main(){inti,j=0;for(i=1;i<3;i++)j+=f(i);printf("%d\n",j);}程序運行后的輸出結果是

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

60.利用fseek函數(shù)可實現(xiàn)的操作是()。

A.實現(xiàn)文件的順序讀寫B(tài).改變文件的位置指針C.實現(xiàn)文件的隨機讀寫D.以上答案均正確

四、選擇題(20題)61.以下敘述中錯誤的是()。

A.函數(shù)的返回值類型不能是結構體類型,只能是簡單類型

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

C.可以通過指向結構體變量的指針訪問所指結構體變量的任何成員

D.只要類型相同,結構體變量之間可以整體賦值

62.

63.下列敘述中錯誤的是()。

A.列表框和組合框都有List屬性

B.列表框有Selected屬性,而組合框沒有

C.列表框和組合框都有Style屬性

D.組合框有Text屬性,而列表框沒有

64.有以下程序:

#include<stdio.h>

main()

{chara=H;

a=(a>=Aa<=2)?(a-A+a):a;

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

}

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

A.AB.aC.HD.h

65.在下列語句中,其含義為“q是一個函數(shù)指針,該指針指向整型數(shù)據(jù)”的定義語句是()。

A.int**q;B.int(*q);C.int*q;D.int*q;

66.下列關于棧的描述錯誤的是()。

A.棧按“先進后出”組織數(shù)據(jù)B.棧是特殊的線性表,只能在一端插入或刪除數(shù)據(jù)C.棧具有記憶功能D.棧只能順序存儲

67.

68.對于循環(huán)隊列,下列敘述中正確的是()。A.隊頭指針是固定不變的

B.隊頭指針—定大于隊尾指針

C.隊頭指針_定小于隊尾指針

D.隊頭指針可以大于隊尾指針,也可以小于隊尾指針

69.假定已建立以下鏈表結構,且指針P和q已指向如圖所示的結點:

則以下選項中可將q所指結點從鏈表中刪除并釋放該結點的語句組是()。

A.p一>next=q一>next;flee(q);

B.p=q一>next;free(q);

C.p=q;free(q);

D.(*p).next=(幸q).next;ffee(p);

70.有以下程序在VC6平臺上編譯運行。程序運行后的輸出結果是(

)。

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

71.有以下程序段程序的輸出結果是()。

A.a=10b=50c=10

B.a=10b=50c=30

C.a=10b=30c=lO

D.a=50b=30c=50

72.

若有以下的說明和語句,則在執(zhí)行for語句后,’(*(pt+1)+2)表示的數(shù)組元素是()。

intt[3][3],*pt[3],k;for(k=0;k<3;k++)pt[k]=&t[k][0];

A.t[2][0]B.t[2][2]C.t[1][2]D.t[2][1]

73.定義如下變量和數(shù)組:

則下面語句的輸出結果是()。

A.951B.741C.753D.963

74.如果將主文件型指針fp指向的文件內部指針置于文件尾,正確的語句是()。

A.feof(fp);

B.rewind(fp);

C.fseek(fp,OL,0);

D.fseek(fp,OL,2);

75.表達式'5'-'1'的值是()。A.A.整數(shù)4B.字符4C.表達式不合法D.字符6

76.以下敘述中錯誤的是()。A.可以通過typedef增加新的類型

B.可以用typedef將已存在的類型用一個新的名字來代表

C.用typedef定義新的類型名后,原有類型名仍有效

D.用typedd可以為各種類型起別名,但不能為變量起別名

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

A.在C語言程序中,main函數(shù)必須放在其他函數(shù)的最前面

B.每個后綴為C的C語言源程序都可以單獨進行編譯

C.在C語言程序中,只有main函數(shù)才可單獨進行編譯

D.每個后綴為.C的C語言源程序都應該包含一個main函數(shù)

78.

79.對于存儲同樣的一組數(shù)據(jù)元素而言().

A.順序結構比鏈接結構易于擴充空間

B.順序結構與鏈接結構相比,更有利于對元素進行插入、刪除運算

C.順序結構占用整塊空間,而鏈接結構不要求整塊空間

D.順序結構比鏈接結構多占存儲空間

80.

五、程序改錯題(1題)81.下列給定程序中,函數(shù)fun的功能是:計算整數(shù)n的階乘。請改正程序中的錯誤,使它能得出正確的結果。注意:不要改動main函數(shù),不得增行或刪行,也不得更改程序的結構。試題程序:

六、程序設計題(1題)82.使用VC++2010打開考生文件夾下prog1中的解決方案。此解決方案的項目中包含一個源程序文件prog1.c。在此程序中,請編寫函數(shù)fun(),其功能是找出2×M整型二維數(shù)組中最大元素的值,并將此值返回調用函數(shù)。注意:部分源程序給出如下。請勿改動主函數(shù)main()和其他函數(shù)中的任何內容,僅在函數(shù)fun()的花括號中填入你編寫的若干語句。試題程序:#defineM4#include<stdio.h>intfun(inta[][m]){}voidmain(){intarr[2][M]={5,8,3,45,76,-4,12,82};printf(“max=%d\n”,fun(arr));}

參考答案

1.A

2.Dscanf函數(shù)讀取的是char型數(shù)據(jù),所以回車時輸入的換行符也是有效字符。于是cl,c2,c3,c4的內容分別是1,2,3,\n。

3.C本題考查swap函數(shù),它的作用是把x、Y所指的內容互換,其他的不變,因此當執(zhí)行完調用函數(shù)后,僅僅a與1互換,其他的沒有變。

4.C解析:帶參數(shù)宏的格式為:#define標識符(形參表)形參表達式。其功能是:在預處理程序中將程序中出現(xiàn)的所有帶實參的宏名,展開成由實參組成的表達式。

5.D解析:因為x的值為大于1的奇數(shù),所以x除以2的余數(shù)等于1。所以選項D)等于關系表達式的結果為假,即等于0。

6.C

7.C

8.A算法的有窮性,是指算法必須能在有限的時間內做完,即算法必須能在執(zhí)行有限個步驟之后終止。

9.B常見的過程設計工具有圖形土具(程序流程圖、N—S圖、PAD圖、HIP0圖)、表格工具(判定表)和語言工具(PDL)。DFD是數(shù)據(jù)流圖,是描述數(shù)據(jù)處理過程的工具。

10.A函數(shù)的功能是對數(shù)組某一區(qū)域內的元素隔個求和;a[3]=4,所以從4開始進行隔個求和,a[7]=8,即對4到8的元素隔個求和,4+6=10。

11.B程序首先給字符數(shù)組s賦值為“012xy”。for循環(huán)語句的功能是遍歷字符串,通過if條件語句對字符串中的小寫字母進行計數(shù),字符串中小寫字母個數(shù)為2,即n=2。故本題答案為B選項。

12.C

13.C解析:數(shù)組名是指針常量,是個固定的指針,不能對數(shù)組名賦予一個新的地址值,也不能使這個指針常駐量“移動”,指向數(shù)組的其他元素。

14.C

15.C

16.Cmain函數(shù)定義3行3列的整型二維數(shù)組a;定義數(shù)組指針P,P指向包含3個元素的數(shù)組。程序首先將a賦給p。for循環(huán)中,i=0時,P指向a的第1個元素{0,1,2},輸出p[0]即0;i=1時,p指向a的第2個元素{3,4,5},輸出P[1]即4;i=2時,p指向a的第3個元素{6,7,8},輸出P[2]即8。所以程序輸出048。故本題答案為C選項。

17.B

18.BQ(1:35)則隊列的存儲空間為35;對空條件:front=rear(初始化時:front=rear),隊滿時:(rear+1)%n==front,n為隊列長度(所用數(shù)組大小),因此當執(zhí)行一系列的出隊與入隊操作,front=rear.則隊列要么為空,要么為滿。

19.B\n選項C和D可直接排除,程序是數(shù)據(jù)結構和算法的組合體,所以是先選擇數(shù)據(jù)結構,然后繼而選擇相對應的算法,編碼并上機調試,最后整理文檔。

\n

20.BB選項中定義的數(shù)組為2行4列,而賦值時卻賦成了3行,所以錯誤。故本題答案為B選項。

21.3232解析:二叉樹的一個性質是,在二叉樹的第k層上,最多有2k-1(k≥1)個結點。由此,26-1=32.所以答案為32。

22.5656解析:本題中a,b,c,d是實參,x,y,cp,dp是形參。C語言規(guī)定,實參變量對形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只由實參傳給形參,而不能由形參傳回來給實參。在內存中,實參單元與形參單元是不同的單元。在調用函數(shù)時,給形參分配存儲單元,并將實參對應的值傳遞給形參,調用結束后,形參單元被釋放,實參單元仍保留并維持原值。因此,程序的輸出結果是56。

23.(x>-5)&&(x<5)(x>-5)&&(x<5)解析:本題考查基本邏輯表達,“整數(shù)x的絕對值大于5”時值為“假”,即整數(shù)x的絕對值小于等于5,也就是整數(shù)x要大于等于-5且要小于等于5。這里“且”用“與(&&)”表示,所以C語言表達式為:(x>-5)&&(x<5)。

24.(double*)(double*)解析:一般用malloc函數(shù)為變量分配存儲單元時,要在前面用強制類型轉換符說明該存儲單元中數(shù)據(jù)的類型。本題要為指向雙精度浮點型數(shù)據(jù)的指針變量p分配存儲單元,因此用(double*)說明。

25.數(shù)據(jù)結構數(shù)據(jù)結構

26.1-41-4解析:題目中首先讓x=5,然后進入do-while循環(huán)體,輸出x-4的值1,此時x為1,表達式!(--x)的值為!(0)為真(此時x變?yōu)?),所以再次執(zhí)行循環(huán)體,輸出x-4的值-4,此時x為-4,表達式!(--x)的值為!(—5)為假,退出循環(huán)。故輸出結果是1-4。

27.EXCHANGE(zxy)或EXCHANGE(zxy);EXCHANGE(z,x,y)或EXCHANGE(z,x,y);

28.繼承繼承

29.918273645918273645解析:程序通過for循環(huán)將字符'0'~'9'從前向后,同時從后向前依次輸出,所以輸出結果為:0918273645。

30.m<10n%4!=0

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

32.算法或程序或流程圖算法或程序或流程圖解析:算法是問題處理方案正確而完整的描述。

33.45994599解析:要注意每條證語句后面是三條語句,而不是一條語句。執(zhí)行第一條if語句時,條件表達式不成立,執(zhí)行a=c;c=t;,此時a=5,c=99;執(zhí)行第二條if語句時,條件表達式成立,執(zhí)行t=b;b=a;a=t;交換a,b的值,輸出結果為4,5和99。

34.Y%2=1或Y%2!=0Y%2=1或Y%2!=0解析:判斷變量是否為奇數(shù)可以用變量與2取模,判斷結果是為1或下為0。本題具體做法如下:Y%2=1或Y%2!=0。

35.86518651解析:主程序中,第一次循環(huán)時,i=0,調用sb(s,x)子函數(shù),此時n=3,x=s[n]=s[3]=8,然后將n減1變?yōu)?;第二次循環(huán)時,i=1,調用sb(s,x)子函數(shù),因為將n定義為了靜態(tài)變量,所以此時n=2,返回x=s[n]=s[2]=6;第三次循環(huán)時,i=2,調用sb(s,x)子函數(shù),此時n=1,返回x=s[n]=s[1]=5;第四次循環(huán)時,i=3,調用sb(s,x)子函數(shù),此時n=0,返回x=s[n]=s[0]=1。此程序實際上是將數(shù)組s逆序輸出。

36.概念(或概念級)概念(或概念級)

37.關系模型關系模型解析:數(shù)據(jù)庫管理系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層系統(tǒng)管理軟件,是一種系統(tǒng)軟件,是用戶與數(shù)據(jù)庫之間的一個標準接口。其總是基于某種數(shù)據(jù)模型,可以分為層次模型、網(wǎng)狀模型和關系模型。

38.物理獨立性物理獨立性解析:邏輯獨立性是指,由于數(shù)據(jù)的局部邏輯結構與總體邏輯結構之間也由系統(tǒng)提供映像,使得當總體邏輯結構改變時,其局部邏輯結構叮以不變,從而根據(jù)局部邏輯結構編寫的應用程序也可以不必修改。物理獨立性是指,由于數(shù)據(jù)的存儲結構與邏輯結構之間山系統(tǒng)提供映像,使得當數(shù)據(jù)的存儲結構改變時,其邏輯結構可以不變,所以,基于邏輯結構的應用程序不必修改。

39.載體載體

40.結構化設計結構化設計解析:與結構化需求分析方法相對應的是結構化設計方法。結構化設計就是采用最佳的可能方法設計系統(tǒng)的各個組成部分以及各個成分之間的內部聯(lián)系的技術。

41.D解析:數(shù)據(jù)模型應該反映和規(guī)定本數(shù)據(jù)模型必須遵守的、基本的、通用的完整性約束條件。完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫狀態(tài)及其狀態(tài)的變化,以保證數(shù)據(jù)的正確性、有效性和相容性。

42.C解析:二叉樹的遍歷分為先序、中序、后序三種不同方式。本題要求中序遍歷,遍歷順序應該為:中序遍歷左子樹->訪問根結點->中序遍歷右子樹。按照定義,中序遍歷序列是BDAECF。

43.A解析:線性表是一種線性結構,數(shù)據(jù)元素性表中的位置只取決于它們自己的序號,即數(shù)據(jù)元素之間的相對位置是線性的;棧、隊列、線性鏈表實際上也是線性表,故也是線性結構。線性鏈表:線性表的鏈式存儲結構稱為線性鏈表,是一種物理存儲單元上非連續(xù)、非順序的存儲結構,數(shù)據(jù)元素的邏輯順序是通過鏈表中的指針鏈接來實現(xiàn)的。

44.A解析:以下幾種算法的時間復雜度分別為:冒泡排序(n2);選擇排序(n2);快速排序(nlog2n);歸并排序(nlog2n)。當排序元素序列基本有序的情況下,冒泡排序的交換次數(shù)為0,只是順序掃描數(shù)據(jù)而已,所以其效率是最高的。

45.B解析:fgets函數(shù)的作用是從指定的文件讀入一個字符串。fgets(str,n,fp);中的n為要求得到的字符的個數(shù),但只從fp指向的文件輸入n-1個字符,然后在最后加一個‘\\0’字符,因此得到的字符串共有n個字符。

46.A解析:第一個判斷值為真,過渡到下一個判斷,第二個判斷為真,過度到第三個判斷......如此循環(huán),在打印輸出語句的前一行,程序給變量x賦了值,為-1,所以,無論前期如伺變化,最后的x值依然為-1。

47.A解析:printf函數(shù)的返回值通常是本次調用中輸出字符的個數(shù)。scanf函數(shù)在調用結束后將返回一個函數(shù)值,其值等于得到輸入項的個數(shù)。

48.A解析:C語言規(guī)定,標識符是由字母、數(shù)字或下劃線組成,并且它的第一個字符必須是字母或者下劃線。另外C語言規(guī)定了一些專用的標識符,它們有著固定的含義,不能更改。int就是表達變量類型的標識符,它不能再用做變量名和函數(shù)名,所以選項B)不正確。do是C語言的一個關鍵字,也不能再用做變量名和函數(shù)名,所以選項C)不正確。

49.A解析:數(shù)據(jù)流圖包括四個方面,即加工(輸入數(shù)據(jù)經(jīng)加工變換產(chǎn)生輸出)、數(shù)據(jù)流(沿箭頭方向傳送數(shù)據(jù)的通道,一般在旁邊標注數(shù)據(jù)流名)、存儲文件(數(shù)據(jù)源)(表示處理過程中存放各種數(shù)據(jù)的文件)、源和潭(表示系統(tǒng)和環(huán)境的接口,屬系統(tǒng)之外的實體),不包括選項中的控制流。

50.B解析:通過觀察可知圖形共4行,主函數(shù)中通過一個for循環(huán)四次,輸出4行。第一行輸出3個空格和1個“*”,第2行輸出2個空格和3個“*”,第3行輸出3個空格和5個“*”,第四行輸出7個“*”,主函數(shù)中通過第二個循環(huán)控制每行的輸出空格數(shù),第三個for循環(huán)控制輸出的“*”的個數(shù),總結規(guī)律:每行輸出的“*”的個數(shù),總比前一行的多2個,且第一行的個數(shù)為1,可以斷定每行輸出的“*”的個數(shù)組成了一個公差為2的等差數(shù)列,所以每行輸出“*”的個數(shù)即該等差數(shù)列的通項,故該空格處應該填寫2*i-1。

51.D

52.A解析:函數(shù)f()的作用是形參a為偶數(shù)的時候返回0,主函數(shù)中首先定義了一個長度為8的一維數(shù)組,然后給它賦初值使得s[0]=1、s[1]=3、s[2]=5、s[3]=2、s[4]=4、s[5]=6。其他沒有賦值的數(shù)組元素將自動賦值為0。for循環(huán)中,當s[i]不為偶數(shù)的時,將s[i]相加,即當i=3時,s[i]=2為偶數(shù),退出循環(huán),此時d的值為d=s[0]+s[1]+s[2]=1+3+5=9,因此最后輸出的d的值為9。

53.D解析:p為指向整型數(shù)據(jù)的指針變量,存放的是a[3]的地址,即p指向數(shù)組{4,5,6,7,8,9,10},b=p[5],因此,b中的值是9。

54.A解析:模式設計和內模式設計是概念設計的兩種方法。物理設計是根據(jù)特定的計算機系統(tǒng),對數(shù)據(jù)的存儲結構和存取方法進行設計,從而實現(xiàn)從邏輯結構到物理結構的轉換。從系統(tǒng)開發(fā)的角度來看,結構特性設計和行為特性-設計是數(shù)據(jù)庫應用系統(tǒng)所具有的兩個特性。結構特性的設計,設計各級數(shù)據(jù)庫模式(靜態(tài)特性):行為特性的設計,改變實體及其特性,決定數(shù)據(jù)庫系統(tǒng)的功能(動態(tài)特性)。

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

56.A解析:NULL表示空,常在定義指針變量時將其值賦為NULL,表示不指向任何地址。NULL在C語言的頭文件中宏定義為0。

57.D解析:本題考查數(shù)組指針的應用。選項D)第一層括號中為數(shù)組a中第i項元素的值,外面再加指針運算符沒有意義。

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

59.B解析:主函數(shù)中for循環(huán)執(zhí)行兩次,i=1和i=2。調用函數(shù)f(1),返回值為1,j=1;調用函數(shù)f(2),計算表達式f(n-1)+1的值時遞歸調用f(1),返回值為2,j=3。所以B為所選。

60.D解析:改變文件位置指針函數(shù)fseek()的功能:①改變文件的位置指針;②輔助實現(xiàn)文件的順序讀寫;③輔助實現(xiàn)文件的隨機讀寫。

6

溫馨提示

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

評論

0/150

提交評論