2022-2023年河北省張家口市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第1頁(yè)
2022-2023年河北省張家口市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第2頁(yè)
2022-2023年河北省張家口市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第3頁(yè)
2022-2023年河北省張家口市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第4頁(yè)
2022-2023年河北省張家口市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(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)介

2022-2023年河北省張家口市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.程序流程圖中帶有箭頭的線(xiàn)段表示的是()。

A.圖元關(guān)系B.數(shù)據(jù)流C.控制流D.調(diào)用關(guān)系

2.下列特征中不是面向?qū)ο蠓椒ǖ闹饕卣鞯氖?)。

A.多態(tài)性B.繼承C.封裝性D.模塊化

3.對(duì)長(zhǎng)度為n的無(wú)序線(xiàn)性表進(jìn)行順序查找,則查找成功、不成功時(shí)的平均數(shù)據(jù)比較次數(shù)分別為()。

A.n/2,nB.n+1/2,n-1C.n+1/2,nD.n-1/2,n-1

4.

讀取二進(jìn)制文件的函數(shù)調(diào)用形式為:fread(buffersize,count,fp);,其中buffer代表的是()。

A.一個(gè)文件指針,指向待讀取的文件

B.一個(gè)整型變量,代表待讀取的數(shù)據(jù)的字節(jié)數(shù)

C.一個(gè)內(nèi)存塊的首地址,代表讀人數(shù)據(jù)存放的地址

D.一個(gè)內(nèi)存塊的字節(jié)數(shù)

5.有以下程序:#include<stdio.h>#include<string.h>main(){chara[]=“THIS\0”,*b=“OK\0\0”;printf(“%d,%d,%d,%d”,strlen(a),sizeof(a),strlen(b),sizeof(b));}程序運(yùn)行后的輸出結(jié)果是()。

A.4,6,2,4B.4,4,4,1C.6,5,2,1D.6,4,2,4

6.以下描述中正確的是

A.由于do-while循環(huán)中循環(huán)體語(yǔ)句只能是一條可執(zhí)行語(yǔ)句,所以循環(huán)體內(nèi)不能使用復(fù)合語(yǔ)句

B.do-while循環(huán)由d。開(kāi)始,用while結(jié)束,在while(表達(dá)式)后面不能寫(xiě)分號(hào)

C.在do-while循環(huán)體中,是先執(zhí)行一次循環(huán),再進(jìn)行判斷

D.do-while循環(huán)中,根據(jù)情況可以省略while

7.設(shè)有定義:structcomplex{intreal,unreal;}data1={1,8},data2;則以下賦值語(yǔ)句中錯(cuò)誤的是()。

A.data2=(2,6);

B.data2=data1;

C.data2.real=data1.real;

D.data2.real=data1.unreal;

8.若有定義“intb[8],*p=b;”,則p+6表示()。

A.數(shù)組元素b[6]的值B.數(shù)組元素b[6]的地址C.數(shù)組元素b[7]的地址D.數(shù)組元素b[0]的值加上6

9.下列程序是用來(lái)判斷數(shù)組中特定元素的位置所在的。#include<conio.h>#include<stdio.h>intfun(int*s,intt,int*k){inti;*k=0;for(i=0;i<t;i++)if(s[*k]<s[i])*k=i;returns[*k];}main(){inta[10]={876,675,896,101,301,401,980,431,451,777},k;fun

A.7,431B.6C.980D.6,980

10.以下不正確的敘述是A.A.在C程序中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低

B.在C程序中,APH和aph是兩個(gè)不同的變量

C.若a和b類(lèi)型相同,在計(jì)算了賦值表達(dá)式a=b后b中的值將放入a中,而b中的值不變

D.當(dāng)從鍵盤(pán)輸入數(shù)據(jù)時(shí),對(duì)于整型變量只能輸入整型數(shù)值,對(duì)于實(shí)型變量只能輸入實(shí)型數(shù)值

11.有以下程序:#include<stdio.h>main(){inti,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++)printf(“%d”,t[2-i][i]);}程序的運(yùn)行結(jié)果是()。

A.357B.753C.369D.751

12.

13.以下選項(xiàng)中與“if(a==l)a=b;elsea++;”語(yǔ)句功能不同的switch語(yǔ)句是()。

A.switch(a){casel:a=b;break;default:a++;}

B.switch(a==l){case0:a=b;break;casel:a++;}

C.switch(a){default:a++;break;casel:a=b;}

D.switch(a==l){casel:a=b;break;case0:a++;}

14.遞歸式的先序遍歷一個(gè)n節(jié)點(diǎn),深度為d的二叉樹(shù),則需要棧空間的大小為()

A.O(logn)B.O(nlogn)C.O(n)D.O(d)

15.

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

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

17.有以下程序:structSTU{charname[10];intnum;floatTotalScore;};voidf(structSTU*p){structSTUs[2]={{"SunDan",20044,550},{"Penghua",20045,537}},*q=s;++p;++q;*p=*q;}main(){structSTUs[3]={{"YangSan",20041,703},{"LiSiGuo",20042,580}};f(s);printf("%s%d%3.0f\n",s[1].name,s[1].num,s[1].TotalScore);}程序運(yùn)行后的輸出結(jié)果是______。

A.SunDan20044580

B.Penghua20045537

C.LiSiGUO20042580

D.SunDan20041703

18.x,y,z被定義為int型變量,若從鍵盤(pán)給x,y,z輸入數(shù)據(jù),正確的輸入語(yǔ)句是

A.INPUTx、v、z;

B.scanf("%d%d%d",&x,&y,&z);

C.scanf("%d%d%d",x,y,z);

D.read("%d%d%d",&x,&y,&z);

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

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

20.以下定義語(yǔ)句中正確的是()。

A.inta=b=0;

B.charA=65+1,b=‘b’;

C.floata=1,*b=&a,*c=&b;

D.doublea=0.0;b=1.1;

二、2.填空題(20題)21.函數(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ǔ)句為【】。

22.函數(shù)YangHui的功能是把楊輝三角形的數(shù)據(jù)賦給二維數(shù)組的下半三角,形式如下:

1

11

121

1331

14641

其構(gòu)成規(guī)律是,第0列元素和主對(duì)角線(xiàn)元素均為1,其余元素為其左上方和正上方元素之和,數(shù)據(jù)的個(gè)數(shù)每行遞增1。請(qǐng)將程序補(bǔ)充完整。

#defintN6

voidYangHui(int*[N][N])

{

inti,j;

x[0][0]=1

for(i=1;i<N;i++)

{

x[i][0]=【】=1

for(j=1;j<i;j++)

x[i][j]=【】;

}

}

23.下列程序中的數(shù)組a包括10個(gè)整數(shù)元素,分別將前項(xiàng)和后項(xiàng)之和存入數(shù)組b,并按每行4個(gè)元素輸出數(shù)組b。請(qǐng)?zhí)羁铡?/p>

#include<stdio.h>

main()

{inta[10],b[10],i;

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

scanf("%d",&a[i]);

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

______;

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

{if(i%4=0)printf("\n");

printf("%3d",b[i]);

}

}

24.源程序文檔化要求程序應(yīng)加注釋。注釋一般分為序言性注釋和【】注釋。

25.下面程序的功能是:計(jì)算1~20之間的奇數(shù)之和與偶數(shù)之和,請(qǐng)?zhí)羁帐钩绦蚬δ芡暾?/p>

#include<stdio.h>

main()

{inta=0,b=0,c=0,i;

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

{a+=i;

();

c+=b;

}

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

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

}

26.使用結(jié)構(gòu)體處理數(shù)據(jù)的場(chǎng)合是【】。

27.以下fun函數(shù)的功能是:累加數(shù)組元素中的值,n為數(shù)組中元素的個(gè)數(shù)。累加的和值放入x所指的存儲(chǔ)單元中。補(bǔ)足所缺語(yǔ)句。

fun(intb[],intn,int*x)

{intk,r=0;

for(k=0;k<n;k++)r=【】;

【】=r;

}

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

29.在鏈表的運(yùn)算過(guò)程中,能夠使空表與非空表的運(yùn)算統(tǒng)一的結(jié)構(gòu)是______。

30.請(qǐng)?jiān)谝韵鲁绦虻谝恍械南聞澗€(xiàn)處填寫(xiě)適當(dāng)內(nèi)容,使程序能正確運(yùn)行。

【】(double,double);

main()

{doublex,y;

seanf("%1f%1f",&x,&y);

pfintf("%1f\n",max(x,y));

}

doublemax(doublea,doubleb)

{return(a>b?a:b);}

31.若a=10,b=20,則表達(dá)式!(a<b)的值是【】。

32.某二叉樹(shù)中度為2的結(jié)點(diǎn)有18個(gè),則該二叉樹(shù)中有【】個(gè)葉子結(jié)點(diǎn)。

33.下列程序的功能是將字符串s中所有的字符c刪除。請(qǐng)?zhí)羁铡?/p>

#include<stdio.h>

main()

{chars[80];

inti,j;

gets(s);

for(i=j=0;s[i]!='\0';i++)

if(s[i]!='c')______;

s[j]='\O';

puts(s);

}

34.表示條件:10<x<100或x<0的C語(yǔ)言表達(dá)式【】。

35.在面向?qū)ο蠓椒ㄖ校?lèi)的實(shí)例稱(chēng)為_(kāi)_____。

36.下面rotate函數(shù)的功能是:將n行n列的矩陣A轉(zhuǎn)置為A',例如:

123415913

5678261014

當(dāng)A=9101112則A'=371115

13141516481216

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

#defineN4

voidrotate(inta[][NJ)

{

inti,j,t;

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

for(j=0;______;j++)

{

t=a[i][j];

______;

a[j][i]=t;

}

}

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

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

39.數(shù)據(jù)庫(kù)系統(tǒng)在其內(nèi)部分為三級(jí)模式,即概念模式、內(nèi)模式和外模式。其中,______是用戶(hù)的數(shù)據(jù)視圖,也就是用戶(hù)所見(jiàn)到的數(shù)據(jù)模式。

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

三、1.選擇題(20題)41.下列函數(shù)的運(yùn)行結(jié)果是main(){inti=2,p;intj,k;j=i;k=++i;p=f(j,k);printf("%d",p);}intf(inta,intb){intc;if(a>b)c=1;elseif(a==b)c=0;elsec=-1;return(c);}

A.-1B.1C.2D.編譯出錯(cuò),無(wú)法運(yùn)行

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

A.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)只能有一種存儲(chǔ)結(jié)構(gòu)

B.數(shù)據(jù)的邏輯結(jié)構(gòu)屬于線(xiàn)性結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)屬于非線(xiàn)性結(jié)構(gòu)

C.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)不影響數(shù)據(jù)處理的效率

D.一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)影響數(shù)據(jù)處理的效率

43.要為讀/寫(xiě)操作打開(kāi)一個(gè)字符文件,其正確的打開(kāi)方式為_(kāi)______。

A.wrB.r+C.rb+D.rw

44.以下程序的輸出結(jié)果是______。fun(intx,inty,intz){z=x*x+y*y;}main(){inta=31;fun(5,2,a);printf("%d",a);}

A.0B.29C.31D.無(wú)定值

45.若有以下定義和語(yǔ)句,則輸出結(jié)果是______。intu=010,v=0x10,w=10;printf("%d,%d,%d\n,u,v,w);

A.8,16,10B.10,10,10C.8,8,10D.8,10,10

46.下列敘述中正確的是()。A.算法的效率只與問(wèn)題的規(guī)模有關(guān),而與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān)

B.算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量

C.數(shù)據(jù)的邏輯結(jié)構(gòu)與存儲(chǔ)結(jié)構(gòu)是一一對(duì)應(yīng)的

D.算法的時(shí)間復(fù)雜度與空間復(fù)雜度一定相關(guān)

47.數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)流都是______,僅僅是所處的狀態(tài)不同。

A.分析結(jié)果B.事件C.動(dòng)作D.數(shù)據(jù)

48.sizeof(float)是()。

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

49.有以下程序:#include<string.h>main(){charp[20]={'a','b','c','d'},q[]="abc",r[]="abcde";strcat(p,r);strcpy(p+strlen(q),q);printf("%d\n",strlen(p));}程序運(yùn)行后的輸出結(jié)果是()。

A.9B.6C.11D.7

50.s1和s2已正確定義并分別指向兩個(gè)字符串。若要求:當(dāng)s1所指串大于s2所指串時(shí),執(zhí)行語(yǔ)句S:則以下選項(xiàng)中正確的是

A.if(s1>s2)S;

B.if(strcmp(s1,s2))S;

C.if(strcmp(s2,s1)>0)S:

D.if(strcmp)(s1,s2)>0)S;

51.設(shè)有“intx=11;”則表達(dá)式(x++*1/3)的值是______。

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

52.在以下一組運(yùn)算中,優(yōu)先級(jí)最高的運(yùn)算符是()

A.<=B.=C.%D.&&

53.以下有4組用戶(hù)標(biāo)識(shí)符,其中合法的一組是()。

A.FOr-subCase

B.4dDOSize

C.f2_G3IFabc

D.WORDvoiddefine

54.若有下面的說(shuō)明和定義,則sizeof(structaa)的值是structaa{intrl;doubler2;floatr3;unionuu{charul[5];longu2[2]}ua;}mya;

A.30B.29C.24D.22

55.程序中頭文件typel.h的內(nèi)容是#defineN5#defineM1N*3#define"typel.h"#defineM2N*2main(){inti;i=M1+M2;printf("%d\n",i);}程序編譯后運(yùn)行的輸出結(jié)果是

A.10B.20C.25D.30

56.下列程序中的for循環(huán)執(zhí)行的次當(dāng)次數(shù)是______。#defineN2#defineMN+i#defineNUM2*M+l#main(){inti;for(i=1;i<=NUM;i++)printf("%d\n",i);}

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

57.在面向?qū)ο蠓椒ㄖ?,?shí)現(xiàn)信息隱蔽是依靠()。

A.對(duì)象的繼承B.對(duì)象的多態(tài)C.對(duì)象的封裝D.對(duì)象的分類(lèi)

58.數(shù)據(jù)庫(kù)設(shè)計(jì)包括兩個(gè)方面的設(shè)計(jì)內(nèi)容,它們是()

A.概念設(shè)計(jì)和邏輯設(shè)計(jì)B.模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)C.內(nèi)模式設(shè)計(jì)和物理設(shè)計(jì)D.結(jié)構(gòu)特性設(shè)計(jì)和行為特性設(shè)計(jì)

59.以下程序中函數(shù)sort的功能是對(duì)a數(shù)組中的數(shù)據(jù)進(jìn)行由大到小的排序voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i++)for(j=i+1;<n;j++)if(a[i]<a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(&aa[3],5);for(i=0;i<10;i++)printf("%d,",aa[i]);printf("\n");}程序運(yùn)行后的輸出結(jié)果是

A.1,2,3,4,5,6,7,8,9,10,

B.10,9,8,7,6,5,4,3,2,1,

C.1,2,3,8,7,6,5,4,9,10,

D.1,2,10,9,8,7,6,5,4,3,

60.以下正確的程序段是

A.cgarstr[20];scanf("%s",&str);

B.char*p;scanf("%s",p);

C.charstr[20];scanf("%s",&str[2])

D.charstr[20],*p=str;scanf("%s",p[2]);

四、選擇題(20題)61.

62.以下不合法的數(shù)值常量是()。

A.8.0E0.5B.lelC.0llD.0xabcd

63.以下選項(xiàng)中,當(dāng)x為大于l的奇數(shù)時(shí),值為0的表達(dá)式是()。

64.以下選項(xiàng)中能表示合法常量的是()。

A.”\007”B.1.5E2.0C.\D.1。200

65.

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

#defineMAX(x,y)(x)>(y)?(x):(y)

main

{inta=2,b=3,C=1,d=3,t:

printf("%d\n",(MAX(a+h,c+d))*100):

}

A.500B.5C.4D.400

66.

67.

68.在數(shù)據(jù)流圖(DFD)中,帶有說(shuō)明的箭頭表示

A.模塊之間的調(diào)用關(guān)系B.程序的組成成分C.控制程序的執(zhí)行順序D.?dāng)?shù)據(jù)的流向

69.設(shè)有如下程序段:

則執(zhí)行P=s;語(yǔ)句后,以下敘述中正確的是()。

A.可以用*P表示s[O]

B.S數(shù)組中元素的個(gè)數(shù)和P所指字符串長(zhǎng)度相等

C.s和P都是指針變量

D.數(shù)組s中的內(nèi)容和指針變量P中的內(nèi)容相等

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

A.k=*pl+*p2B.p2=k;C.pl=p2;D.k=*pl*(*p2.;

71.

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

#include<stdio.h>

main

{structdate

{intyear,month,day;

}today;

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

}

A.8B.6C.10D.12

72.關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)能實(shí)現(xiàn)的專(zhuān)門(mén)關(guān)系運(yùn)算包括()。

A.排序、索引、統(tǒng)計(jì)B.選擇、投影、連接C.關(guān)聯(lián)、更新、排序D.顯示、打印、制表

73.語(yǔ)句Char(*P)說(shuō)明了()。

A.P是指向函數(shù)的指針,該函數(shù)返回一個(gè)Char型數(shù)據(jù)

B.P是指向Char型數(shù)據(jù)的指針變量

C.P是指向數(shù)組的指針變量

D.P是一個(gè)函數(shù)名,該函數(shù)的返回值是指向Char型數(shù)據(jù)的指針

74.在數(shù)據(jù)庫(kù)設(shè)計(jì)的各階段中,負(fù)責(zé)將E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型的階段是

A.需求分析階段B.邏輯設(shè)計(jì)階段C.概念設(shè)計(jì)階段D.物理設(shè)計(jì)階段

75.

76.

77.以下選項(xiàng)中不合法的標(biāo)識(shí)符是()。

A.&aB.FORC.pfintD.00

78.有以下程序段:

當(dāng)執(zhí)行上述程序段,并從鍵盤(pán)輸入:nalne=LilinLim=1001<;回車(chē)>;后,name的值為()。

A.name:=Lilinum=1001B.nfll"ne=LiliC.Uli.h.um=D.Lili

79.有以下程序:

main

{inti,j;

for(j=10;j<11;j++)

{for(i=9;i<j;i++)

if(!(j%i))break;

if(i==j-1)

printf("%d",j);

}

}

輸出結(jié)果是()。A.A.11B.10C.9D.1011

80.有如下程序段

#include"stdio.h"

voidfun(int*a,int*b,int*c,int*d,int*e)

{inti,j,k,m;

for(i=0;i<*a;i++)

for(j=0;j<*b;j++)

for(k=0;k<*c;k++)

for(m=0;m<*d;m++)

++*e;

}

main()

{inta=10,b=10,c=10,d=10,e=0;

fun(&a,&b,&c,&d,&e);

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

則程序段的輸出結(jié)果是

A.10000B.1000

C.100D.0

五、程序改錯(cuò)題(1題)81.下列給定程序中函數(shù)proc()的功能是:將長(zhǎng)整型數(shù)中為偶數(shù)的數(shù)依次逆向取出,構(gòu)成一個(gè)新數(shù)放在t中。高位在低位,低位在高位。例如,當(dāng)s中的數(shù)為12345678時(shí),則t中的數(shù)為8642。

請(qǐng)修改函數(shù)proc()中的錯(cuò)誤,使它能得出正確的結(jié)果。

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

試題程序:

六、程序設(shè)計(jì)題(1題)82.編寫(xiě)函數(shù)如n,其功能是:刪除一個(gè)字符串中指定下標(biāo)的字符。其中,a指向原字符串,刪除指定字符后的字符串存放在b所指的數(shù)組中,n放指定的下標(biāo)。例:輸入一個(gè)字符串“world”,然后輸入3,則調(diào)用該函數(shù)后的結(jié)果為“word”。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)丘m的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。試題程序:

參考答案

1.C解析:程序流程圖是人們對(duì)解決問(wèn)題的方法、思路或算法的一種描述。其中,圖框表示各種操作的類(lèi)型,圖框中的文字和符號(hào)表示操作的內(nèi)容,流程線(xiàn)表示操作的先后次序。帶箭頭的線(xiàn)段在數(shù)據(jù)流程圖中表示數(shù)據(jù)流。帶箭頭的線(xiàn)段在程序流程圖中表示控制流。題中給出的選項(xiàng)中,在圖元之間用帶有箭頭的線(xiàn)段表示圖元關(guān)系。在模塊之間用帶有箭頭的線(xiàn)段表示調(diào)用關(guān)系。構(gòu)成程序流程圖的基本圖符及含義:→或↓表示控制流;□表示加工步驟;

表示邏輯條件。

2.DD?!窘馕觥棵嫦?qū)ο笤O(shè)計(jì)方法與面向過(guò)程設(shè)計(jì)方法有本質(zhì)的不同,其基本原理是:使用現(xiàn)實(shí)世界的概念抽象地思考問(wèn)題從而自然地解決問(wèn)題。其特點(diǎn)包括:分類(lèi)性、多態(tài)性、封裝性、模塊獨(dú)立性、繼承和多態(tài)性等。模塊化是結(jié)構(gòu)化程序設(shè)計(jì)的特點(diǎn)。

3.C

4.Cfread函數(shù)中的參數(shù)buffer是內(nèi)存塊的首地址,輸入的數(shù)據(jù)存入此內(nèi)存塊中。

5.Astrlen函數(shù)求得參數(shù)中字符串的長(zhǎng)度(不包括字符串結(jié)束標(biāo)識(shí)“\\0”)sizeof函數(shù)求得特定類(lèi)型參數(shù)所占存儲(chǔ)空間的長(zhǎng)度。題干中a是數(shù)組名,由于定義時(shí)省略維數(shù)大小,因此數(shù)組大小是初始化的字符個(gè)數(shù),即a的數(shù)組大小為6。綜上,strlen(a)只計(jì)算字符“T”“H”“I”“S”,結(jié)果為4;sizeof(a)求得數(shù)組a的大小,結(jié)果為6;指針b指向一個(gè)字符串“OK\\0\\0”,所以strlen(b)只計(jì)算字符“O”“K”,結(jié)果為2;sizeof(b)求得指針占用存儲(chǔ)空間的大小,結(jié)果為4。故本題答案為A選項(xiàng)。

6.C解析:do-while語(yǔ)句的一般形式為:do循環(huán)體語(yǔ)句while(表達(dá)式);,其中循環(huán)體語(yǔ)句可以是復(fù)合型語(yǔ)句,但必須用花括號(hào)括起來(lái)。while后必須要有分號(hào)作為語(yǔ)句的結(jié)束,在do-while循環(huán)中,不可以省略while。

7.A結(jié)構(gòu)體變量初始化的具體成員值使用花括號(hào)標(biāo)注,選項(xiàng)A錯(cuò)誤。故本題答案為A選項(xiàng)。

8.B指針中存放的是變量的地址,指針也可以進(jìn)行增減運(yùn)算,這時(shí)指針移動(dòng)的最小單位是一個(gè)存儲(chǔ)單元,而不是一個(gè)字節(jié)。所以題中“P+6”指的是將指針向后移動(dòng)了6個(gè)存儲(chǔ)單元,即指向uE63,存放的是b[6]的地址。

9.D解析:本題中直接使用指針變量k,但在使用時(shí)要注意對(duì)k的指針運(yùn)算。此外,一開(kāi)始應(yīng)知道*k的值為數(shù)組中的某一下標(biāo)值,即*k=0,本函數(shù)的功能是找出數(shù)組中的最大元素的位置及最大元素的值。

10.D解析:在C語(yǔ)言所有的運(yùn)算符中,逗號(hào)運(yùn)算符的優(yōu)先級(jí)最低。C語(yǔ)言中區(qū)分大小寫(xiě),所以APH和aph是兩個(gè)不同的變量。賦值表達(dá)式a=b表示將b的值付給a,而b本身的值保持不變;通過(guò)鍵盤(pán)可以向計(jì)算機(jī)輸入允許的任何類(lèi)型的數(shù)據(jù)。選項(xiàng)D)中當(dāng)從鍵盤(pán)輸入數(shù)據(jù)時(shí),對(duì)于整型變量可以輸入整型數(shù)值和字符,對(duì)于實(shí)型變量可以輸入實(shí)型數(shù)值和整型數(shù)值等。

11.A二維數(shù)組t[][3]即t[3][3]={{9,8,7},{6,5,4},{3,2,1}}。執(zhí)行循環(huán)for語(yǔ)句,當(dāng)i=0時(shí),t[2][0]=3;當(dāng)i=1時(shí),t[l][1]=5;當(dāng)i=2時(shí),t[0][2]=7;當(dāng)i=3時(shí),循環(huán)結(jié)束,即t[2][0]=3、t[1][1]=5、t[0][2]=7。故本題答案為A選項(xiàng)。

12.D

13.B題中當(dāng)a的值為l時(shí),關(guān)系表達(dá)式a==l的值為真,即1,因此程序?qū)⑻D(zhuǎn)到easel執(zhí)行a++操作,與題干程序剛好相反。

14.D

15.D

16.D

17.B解析:f函數(shù)用了顯式傳地址的方式,因此主函數(shù)中的s值發(fā)生了變化。

18.B解析:scanf函數(shù)的一般格式是:

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

該格式中,地址表列中應(yīng)是變量地址,而不是變量名。注意:調(diào)用putchar和getchar函輸出和輸入字符。

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

20.BA選項(xiàng)中的變量b沒(méi)有定義,不能直接給變量a賦值。C選項(xiàng)中,*b、*c表示的是一個(gè)實(shí)型變量的地址,不能將指針型變量b的地址賦值給指針型變量c。D選項(xiàng)中,“a=0.0”后面應(yīng)該為逗號(hào),不能是分號(hào)。故本題答案為B選項(xiàng)。

21.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);

22.x[i][i]x[i-1][j-1]+x[i-1][j]或x[i-1][j]+x[i-1][j-1]x[i][i]\r\nx[i-1][j-1]+x[i-1][j]或x[i-1][j]+x[i-1][j-1]解析:在程序中有兩重循環(huán)。在第一層for循環(huán)中將每行的第0列賦值為1,對(duì)角線(xiàn)上的元素賦值為1,顯然在第一個(gè)空白處應(yīng)該填入對(duì)角線(xiàn)上的元素即x[i][i],在第二重循環(huán)中給每行其他元素賦值,而在每行中除了第0列和對(duì)角線(xiàn)的元素外其他元素為其對(duì)應(yīng)的上一行中同列和同列的前一列的元素相加,所以在第二個(gè)空白處應(yīng)該填入x[i-1][j-1]+x[i-1][j]。

23.b[i]=a[i]+a[i+1]b[i]=a[i]+a[i+1]解析:將數(shù)組a中元素a[i]與a[j+1]值相加后的值賦予數(shù)組b中元素b[i],即可實(shí)現(xiàn)將一個(gè)數(shù)組的前項(xiàng)和后項(xiàng)之和存入另一數(shù)組。

24.功能性功能性

25.b=i+1b=i+1解析:分析for循環(huán)條件,i=0說(shuō)明循環(huán)從0開(kāi)始判斷,i+=2是間隔為2的數(shù),i<=20就是控制數(shù)是20之內(nèi)的a+=i,就是所有偶數(shù)的和,如果從1開(kāi)始(b=i+1)間隔為2的數(shù)(1,3,5,7,9,11,13,15,17,19)相加就是所有奇數(shù)的和。

26.把不同類(lèi)型的數(shù)據(jù)作為整體處理

27.r+b[k]或b[k]+r或r+*(b+k)或*(b+k)+r*xr+b[k]或b[k]+r或r+*(b+k)或*(b+k)+r\r\n*x

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

29.循環(huán)鏈表循環(huán)鏈表解析:在循環(huán)鏈表中,由于設(shè)置了一個(gè)頭結(jié)點(diǎn),因此在任何情況下,循環(huán)鏈表中至少有一個(gè)結(jié)點(diǎn)存在,從而使空表與非空表的運(yùn)算統(tǒng)一。

30.doublemax或externdoublemaxdoublemax或externdoublemax解析:函數(shù)聲明是對(duì)所用到的函數(shù)的特征進(jìn)行必要的聲明,編譯系統(tǒng)以函數(shù)聲明中給出的信息為依據(jù),對(duì)調(diào)用表達(dá)式進(jìn)行檢測(cè),以保證調(diào)用表達(dá)式與函數(shù)之間的參數(shù)正確傳遞。函數(shù)聲明的一般格式為:類(lèi)型標(biāo)識(shí)符函數(shù)名(類(lèi)型標(biāo)識(shí)符形參,…);這些信息就是函數(shù)定義中的第一行的內(nèi)容。本題中main()函數(shù)需要調(diào)用max()函數(shù),在main()之前就需要聲明函數(shù)max(),并且可以用extem說(shuō)明符使變量的作用域擴(kuò)充到需要用到它的函數(shù),所以,填寫(xiě)doublemax(或externdoublemax)。

31.00解析:已知a=10,b=20,所以邏輯表達(dá)式a<b的值為true,即為1,在這個(gè)表達(dá)式前面有一個(gè)邏輯運(yùn)算符!,表示反操作,所以整個(gè)語(yǔ)句的值應(yīng)當(dāng)為false,即為0。

32.1919解析:根據(jù)二叉樹(shù)的性質(zhì):在任意一棵二叉樹(shù)中,度為。的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)點(diǎn)多一個(gè)。本題中度為2的結(jié)點(diǎn)數(shù)為18,故葉子結(jié)點(diǎn)數(shù)為18+1=19個(gè)。

33.s[j++]=s[i]s[j++]=s[i]解析:循環(huán)開(kāi)始后如果數(shù)組s中儲(chǔ)存值與字符c相同,則i++直接跳過(guò)當(dāng)前值;如果不相同,則將當(dāng)前值賦予數(shù)組指定位置,并通過(guò)j++將下標(biāo)加1,指向下一元素要存儲(chǔ)的位置。

34.(X>10&&x<100)||x<0或(10<x&&x<100)||x<0或x<0||(x>10&&x<100)或0>x||(10<x&&x<100)或(括號(hào)有無(wú)都可以)(X>10&&x<100)||x<0\r\n\u3000\u3000或(10<x&&x<100)||x<0或x<0||(x>10&&x<100)\r\n\u3000\u3000或0>x||(10<x&&x<100)或(括號(hào)有無(wú)都可以)

35.對(duì)象對(duì)象解析:類(lèi)描述的是具有相似性質(zhì)的一組對(duì)象。例如,每本具體的書(shū)是一個(gè)對(duì)象,而這些具體的書(shū)都有共同的性質(zhì),它們都屬于更一般的概念“書(shū)”這一類(lèi)對(duì)象。一個(gè)具體對(duì)象稱(chēng)為類(lèi)的實(shí)例。

36.j<ia[i][j]=a[j][i]j<ia[i][j]=a[j][i]解析:本題中要求將n行n列的矩陣A轉(zhuǎn)置,即讓數(shù)組中行上的元素變成對(duì)應(yīng)列上的元素。即把對(duì)角線(xiàn)兩邊的元素對(duì)換,所以本題的第一個(gè)空格處應(yīng)該填寫(xiě)1<i,第二個(gè)空格處填寫(xiě)交換對(duì)角線(xiàn)兩邊的元素的語(yǔ)句a[i][j]=a[j][i]。

37.CHINA

38.完整性控制完整性控制

39.外模式外模式解析:外模式由概念模式推導(dǎo)而出,給出了每個(gè)用戶(hù)的局部數(shù)據(jù)描述,即數(shù)據(jù)視圖。

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

41.A解析:函數(shù)調(diào)用相當(dāng)于f(2,3),程序運(yùn)算應(yīng)得結(jié)果為“-1”。

42.D解析:數(shù)據(jù)的邏輯結(jié)構(gòu)是對(duì)數(shù)據(jù)元素之間的邏輯關(guān)系的描述,它可以用一個(gè)數(shù)據(jù)元素的集合和在此集合中定義的若干關(guān)系來(lái)表示。數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱(chēng)為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)(也稱(chēng)數(shù)據(jù)的物理結(jié)構(gòu))。一種數(shù)據(jù)的邏輯結(jié)構(gòu)根據(jù)需要可以表示成多種存儲(chǔ)結(jié)構(gòu),常用的存儲(chǔ)結(jié)構(gòu)有順序、鏈接等存儲(chǔ)結(jié)構(gòu)。但是不同的存儲(chǔ)結(jié)構(gòu)的數(shù)據(jù)的處理效率不同。

43.B解析:在C中可以通過(guò)fopen函數(shù)來(lái)打開(kāi)—個(gè)文件,在該函數(shù)的第二個(gè)參數(shù)中指定其打開(kāi)方式。要以讀寫(xiě)方式打開(kāi)文件可以用'r+'、'w+'、'a+'來(lái)表示,要打開(kāi)二進(jìn)制文件,可以在打開(kāi)方式中加上字母b,對(duì)于字符文件不要加b。

44.C解析:函數(shù)fun的形參是簡(jiǎn)單變量,main函數(shù)中調(diào)用fun時(shí)只是把實(shí)參的值傳遞給形參,形參的改變不影響實(shí)參,所以調(diào)用完函數(shù)fun后a的值不發(fā)生變化,即a=31。

45.A解析:u被八進(jìn)制數(shù)10賦值,等于十進(jìn)制數(shù)8:v被十六進(jìn)制數(shù)10賦值,等于十進(jìn)制數(shù)16;w直接被十進(jìn)制數(shù)10賦值;因此分別輸出十進(jìn)制數(shù)8,16,10。

46.B解析:本題考查數(shù)據(jù)結(jié)構(gòu)中有關(guān)算法的基本知識(shí)和概念。數(shù)據(jù)的結(jié)構(gòu),直接影響算法的選擇和效率。而數(shù)據(jù)結(jié)構(gòu)包括兩方面,即數(shù)據(jù)的邏輯結(jié)構(gòu)和數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)。因此,數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)都影響算法的效率。選項(xiàng)A的說(shuō)法是錯(cuò)誤的。算法的時(shí)間復(fù)雜度是指算法在計(jì)算機(jī)內(nèi)執(zhí)行時(shí)所需時(shí)間的度量;與時(shí)間復(fù)雜度類(lèi)似,空間復(fù)雜度是指算法在計(jì)算機(jī)內(nèi)執(zhí)行時(shí)所需存儲(chǔ)空間的度量。因此,選項(xiàng)B的說(shuō)法是正確的。

數(shù)據(jù)之間的相互關(guān)系稱(chēng)為邏輯結(jié)構(gòu)。通常分為四類(lèi)基本邏輯結(jié)構(gòu),即集合、線(xiàn)性結(jié)構(gòu)、樹(shù)型結(jié)構(gòu)、圖狀結(jié)構(gòu)或網(wǎng)狀結(jié)構(gòu)。存儲(chǔ)結(jié)構(gòu)是邏輯結(jié)構(gòu)在存儲(chǔ)器中的映象,它包含數(shù)據(jù)元素的映象和關(guān)系的映象。存儲(chǔ)結(jié)構(gòu)在計(jì)算機(jī)中有兩種,即順序存儲(chǔ)結(jié)構(gòu)和鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)??梢?jiàn),邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)不是一一對(duì)應(yīng)的。因此,選項(xiàng)C的說(shuō)法是錯(cuò)誤的。

有時(shí)人們?yōu)榱颂岣咚惴ǖ臅r(shí)間復(fù)雜度,而以犧牲空間復(fù)雜度為代價(jià)。但是,這兩者之間沒(méi)有必然的聯(lián)系。因此,選項(xiàng)D的說(shuō)法是錯(cuò)誤的。

47.D解析:數(shù)據(jù)流圖有4種成分:源點(diǎn)或終點(diǎn)、處理、數(shù)據(jù)存儲(chǔ)和哦數(shù)據(jù)流。數(shù)據(jù)存儲(chǔ)是處于靜止?fàn)顟B(tài)的數(shù)據(jù),數(shù)據(jù)流是處于運(yùn)動(dòng)中的數(shù)據(jù)。

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

49.B解析:本題首先定義了3個(gè)字符數(shù)組p、q、r并分別被初始化。數(shù)組p指定的大小為20,初始化列表為{\'a\',\'b\',\'c\',\'d\'},即只指定了前4個(gè)元素的內(nèi)容,根據(jù)C語(yǔ)言的規(guī)定,初始化列表不足時(shí),其余元素均自動(dòng)初始化為0。然后通過(guò)strcat()函數(shù),將字符串,連接到字符串p之后,即執(zhí)行后p中的內(nèi)容為'abcdabcde'。因?yàn)椤皊trlen(q)”表示求字符串q的長(zhǎng)度,很明顯為3,所以語(yǔ)句“strcpy(p+strlen(q),q);”的作用就是:將字符串q拷貝到數(shù)組p的第3個(gè)元素位置處。注意,strcpy函數(shù)拷貝字符串會(huì)將其結(jié)束標(biāo)志位一起拷貝,故拷貝完后p中的內(nèi)容為”ababc\\0de',但通過(guò)strlen函數(shù)取p的長(zhǎng)度碰到\'\\0\\即停止,故p中字符串的長(zhǎng)度是6,應(yīng)該選擇B。

50.D解析:在C語(yǔ)言中字符串的比較用strcmp()函數(shù),該函數(shù)有兩個(gè)參數(shù),分別為被比較的兩個(gè)字符串。如果第一個(gè)字符串大于第二個(gè)字符串返回值大于0,若小于返回值小于0,相等返回值為0.字符串比較大小的標(biāo)準(zhǔn)是從第一個(gè)字符開(kāi)始依次向右比較,遇到某一個(gè)字符大,該字符所在的字符串就是較大的字符串,如果遇到某一個(gè)字符小,該字符所在的字符串就是較小的字符串。本題中要求當(dāng)s1所指字符串大于s2所指串時(shí),執(zhí)行語(yǔ)句s,因此應(yīng)該為strcmp(s1,s2)>0或者strcmp(s2,s1)<0,所以,4個(gè)選項(xiàng)中選項(xiàng)D符合題意。

51.A解析:該題主要考查兩個(gè)知識(shí)要點(diǎn),x++是先引用x的值再加1,因此參與乘法運(yùn)算的是x的原值11,分母11與分子3相除得3,故原式=11*1/3=3。

52.C

53.C解析:選項(xiàng)A中for和case為C語(yǔ)言中的保留字,不能作為用戶(hù)標(biāo)志符,故A錯(cuò)誤。選項(xiàng)B中的4d其開(kāi)頭的第一個(gè)為數(shù)字,而在C語(yǔ)言中規(guī)定,第一個(gè)字符必須為字母或者下劃線(xiàn),故B錯(cuò)誤;選項(xiàng)D中void為C語(yǔ)言中的保留字,不能作為用戶(hù)標(biāo)志符,故D錯(cuò)誤。所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。

54.D解析:結(jié)構(gòu)體變量所占內(nèi)存長(zhǎng)度是各成員占的內(nèi)存長(zhǎng)度之和,每個(gè)成員分別占有自己的內(nèi)存單元;共用體變量所占的內(nèi)存長(zhǎng)度等于最長(zhǎng)的成員的長(zhǎng)度。結(jié)構(gòu)體變量aa中,成員r1占2個(gè)字節(jié),r2占8個(gè)字節(jié),r3占4個(gè)字節(jié),共用體ua占8個(gè)字節(jié),所以共占用2+8+4+8=22個(gè)字節(jié)。

55.C解析:本題考查的知識(shí)點(diǎn)是“文件包含”。編譯預(yù)處理時(shí),用“typel.h”中的內(nèi)容替代命令ginclude”typel.h'。表達(dá)式“i=M1+M2”經(jīng)過(guò)宏替換為“i=5*3+5*2”即i=25,所以最后輸出的i的值為25。所以4個(gè)選項(xiàng)中C正確。

56.B

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

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

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

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

經(jīng)過(guò)上述分析可知,在面向?qū)ο蠓椒ㄖ?,?shí)現(xiàn)信息隱蔽是依靠對(duì)象的封裝。正確答案是選項(xiàng)C。

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

59.C解析:C語(yǔ)言中,實(shí)參變量和形參變量之間的數(shù)據(jù)傳遞是單向的“值傳遞”方式。指針變量作函數(shù)參也要遵循這一規(guī)則,調(diào)用函數(shù)不可能改變實(shí)參指針變量的值,但可以改變實(shí)參指針變量所指變量的值。

60.C解析:scanf輸入字符串有一點(diǎn)要注意的是,格式控制串必須用%s。注意:gets函數(shù)和puts函數(shù)的作用。

61.A

62.AA選項(xiàng)中E后面的指數(shù)必須為整型數(shù)據(jù),所以A錯(cuò)誤。c選項(xiàng)中011表示的是八進(jìn)制常量,0xabcd表示的是十六進(jìn)制常量。

63.A當(dāng)X為大于1的奇數(shù),x%2==0表達(dá)式為0,所以選擇A)。

64.AE前E后有數(shù)字,E后數(shù)字為整數(shù),B)錯(cuò)誤;“\”為轉(zhuǎn)義字符,后面跟特定字符,用來(lái)表示ASCn字符,c)錯(cuò)誤;一個(gè)整數(shù)之間不能有逗號(hào),D)錯(cuò)誤。

65.A

\n本題考查帶參數(shù)宏的定義,運(yùn)算符:(x)>(y)?(x):(y)當(dāng)表達(dá)式為真時(shí)輸出X,否則輸出Y,調(diào)用(MAX(a+b,c+d))*100時(shí),(a+b=5)>(c+d=4),輸出a+b=5,所以x=5*100。

\n

66.C

67.D

68.D數(shù)據(jù)流圖的四種基本符號(hào)分別是數(shù)據(jù)的源點(diǎn)或終點(diǎn)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)和加工,其中帶有說(shuō)明的箭頭表示數(shù)據(jù)流,即數(shù)據(jù)的流向。

數(shù)據(jù)流是一組確定的數(shù)據(jù)在系統(tǒng)內(nèi)傳播的路徑。數(shù)據(jù)流的流向由箭頭方向指出,可從加工流向加工,也可以從加工流向數(shù)據(jù)存儲(chǔ)或從數(shù)據(jù)存儲(chǔ)流向加工,還可以從源點(diǎn)流向加工或從加工流向終點(diǎn)。在數(shù)據(jù)流圖中,除了與數(shù)據(jù)存儲(chǔ)之間的數(shù)據(jù)流不用命名外,數(shù)據(jù)流應(yīng)該對(duì)應(yīng)一個(gè)唯一的名字。

69.AP=8;后,指針P指向s的首地址,*P=s[0],因此選項(xiàng)A)是正確的;p是字符串指針,所指向的字符串為”beijing”,其長(zhǎng)度為7,而數(shù)組s中元素的個(gè)數(shù)為20,因此選項(xiàng)B)和D)是錯(cuò)誤的;s是數(shù)組,不是指針變量,所以選項(xiàng)C)也是錯(cuò)誤的。

70.B本題主要考查了一維數(shù)組指針的賦值和用指針引用數(shù)組元素進(jìn)行運(yùn)算。選項(xiàng)B)中p2為指向int型變量的指針,而k為int型變量,不能將int型變量直接賦值給指向int型變量的指針,所以選項(xiàng)B)錯(cuò)誤,應(yīng)該為p2=&k。

7

溫馨提示

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