2021年山東省臨沂市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第1頁(yè)
2021年山東省臨沂市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第2頁(yè)
2021年山東省臨沂市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第3頁(yè)
2021年山東省臨沂市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第4頁(yè)
2021年山東省臨沂市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩28頁(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年山東省臨沂市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題二卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________

一、單選題(20題)1.以下程序的輸出結(jié)果是______。#include<stdio.h>main(){inta=200;#definea100printf("%d",a);#undefaprintf("%d",a);}

A.200100B.100100C.100200D.200200

2.設(shè)有兩個(gè)串p和q,其中q是p的子串,求q在p中首次出現(xiàn)的位置的算法稱為()。

A.求子串B.聯(lián)接C.匹配D.求串長(zhǎng)

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

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

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

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

4.若有定義“a[]={1,2,3,4,5,6,7,8,9,10};”,則“a[a[5]-a[7]/a[1]]”的值是()。

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

5.設(shè)x=011050,則x=x&01252的值是()。A.0000001000101000

B.1111110100011001

C.0000001011100010

D.1100000000101000

6.有以下程序:#include<stdlo.h>main(){FILE*fp;inti,k,n;fp=fopen("data.dat","w+")for(i=1;i<6;i++){fprintf(fp."%d",i);if(i%3==0)fprintf(fp,"\n");}rewind(fp);fscanf(fp."%d%d",&k,&n);printf("%d%d\n",k,n);fclose(fp);

A.00B.12345C.14D.1

7.

有以下程序:

main

{intnum[4][4]={1,2,3,4},{5,6,7,8},{9,10,11,

12,},{13,14,15,16}},i,j;

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

{for(j=0;j<i;j++)printf("%4c",);

for(j=________;J<4;j++)printf("%4d",num

[i][j]);

printf("\n");}}

若要按以下形式輸出數(shù)組右上半三角

1234

678

1112

16

則在程序下劃線處應(yīng)填入的是()。

A.i-1B.iC.i+1D.4一i

8.有以下程序:#include<stdio.h>intf(intx);main(){intn=1,m;m=f(f(f(n)));printf(“%d\n”,m);}intf(intx){returnx*2;}程序的運(yùn)行結(jié)果是()。

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

9.有以下程序:

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

A.4321098765B.5678901234C.0987654321D.0987651234

10.非線性結(jié)構(gòu)是數(shù)據(jù)元素之間存在一種()。

A.一對(duì)多關(guān)系B.多對(duì)多關(guān)系C.多對(duì)一關(guān)系D.一對(duì)一關(guān)系

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

A.20B.25C.45D.36

12.程序設(shè)計(jì)的任務(wù)包括()。

A.編寫(xiě)程序代碼并上機(jī)調(diào)試B.確定所用數(shù)據(jù)結(jié)構(gòu)C.確定所用算法D.以上選項(xiàng)均正確

13.在關(guān)系中凡能惟一標(biāo)識(shí)元組的最小屬性集稱為該表的鍵或碼。二維表中可能有若干個(gè)鍵,它們稱為該表的()

A.連接碼B.關(guān)系碼C.外碼D.候選碼

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

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

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

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

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

15.計(jì)算機(jī)硬件組成中,CPU包含______。

A.控制器和存儲(chǔ)器B.控制器和運(yùn)算器C.控制器、運(yùn)算器和存儲(chǔ)器D.內(nèi)存儲(chǔ)器和外存儲(chǔ)器

16.用單鏈表方式存儲(chǔ)的線性表,存儲(chǔ)每個(gè)結(jié)點(diǎn)需要兩個(gè)域,一個(gè)數(shù)據(jù)域,另一個(gè)是()。

A.當(dāng)前結(jié)點(diǎn)的所在地址B.后繼結(jié)點(diǎn)的所在地址C.空指針域D.空閑域

17.若有以下定義和語(yǔ)句:chars[10]="abcd!",*s2="\nl23\\";Drintf("%d%d\n",strlen(sl),strlen(s2));則輸出結(jié)果是()。A.55B.105C.107D.58

18.有以下程序:#include<stdio.h>main(){charx,a=‘A’,b=‘B’,c=‘C’,d=‘D’;x=(a<b)?a:b;x=(x>c)?c:x;x=(d>x)?x:d;printf(“%c\n”,x);}程序運(yùn)行后的輸出結(jié)果是()。

A.DB.BC.CD.A

19.若變量已正確定義,在“if(W)Printf(“%d\n”,k);”中,以下不可替代W的是()。

A.a<>b+cB.ch=getchar()C.a==b+cD.a++

20.用鄰接矩陣A表示有向圖G的存儲(chǔ)結(jié)構(gòu),則有向圖G中頂點(diǎn)i的出度為()。

A.第i行非0元素的個(gè)數(shù)之和B.第i列非0元素的個(gè)數(shù)之和C.第i行0元素的個(gè)數(shù)之和D.第i列0元素的個(gè)數(shù)之和

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

#include<stdio.h>

main()

inta[3][3]={{1,2,9},{3,4,8},{5,6,7}},i,s=0;

for(i=0;i<3;i++)s+=a[i][i]+a[i][3-i-1];

pfintf("%d\n",s);

22.有以下定義和語(yǔ)句,則sizeof(a)的值是【】,而sizeof(a.share)的值是【】。

structdate

{intday;

intmouth;

intyear;

union{intshare1;

floatshare2;

}share;

}a;

23.長(zhǎng)度為n的順序存儲(chǔ)線性表中,當(dāng)在任何位置上插入一個(gè)元素概率都相等時(shí),插入一個(gè)元素所需移動(dòng)元素的平均個(gè)數(shù)為【】。

24.在關(guān)系數(shù)據(jù)庫(kù)中,用來(lái)表示實(shí)體之間聯(lián)系的是【】。

25.設(shè)有下列宏定義:

#defineA2

#defineB(A+3)

則執(zhí)行賦值語(yǔ)句"k=B*20;"(k為int型變量)后,k的值是______。

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

main()

{

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

inti=0,j=0;

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

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

}

27.在關(guān)系數(shù)據(jù)庫(kù)中把數(shù)據(jù)表示成二維表,每一個(gè)二維表稱為【】。

28.在進(jìn)行模塊測(cè)試時(shí),要為每個(gè)被測(cè)試的模塊另外設(shè)計(jì)兩類模塊:驅(qū)動(dòng)模塊和承接模塊(樁模塊),其中【】的作用是將測(cè)試數(shù)據(jù)傳送給被測(cè)試的模塊,并顯示被測(cè)試模塊所產(chǎn)生的結(jié)果。

29.【】是數(shù)據(jù)庫(kù)設(shè)計(jì)的核心。

30.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。

31.棧和隊(duì)列通常采用的存儲(chǔ)結(jié)構(gòu)是【】。

32.設(shè)有下列宏定義:

#defineA2

#defineB(A+3)

則執(zhí)行賦值語(yǔ)句“k=B*20;”(k為int型變量)后,k的值是______。

33.有以下程序:

voidf(inty,int*x)

{y=y+*x;*x=*x+y;}

main()

{intx=2,y=4;

f(y,&x);

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

}

執(zhí)行后輸出結(jié)果是上【】。

34.若x為int類型,請(qǐng)寫(xiě)出與!x等價(jià)的C語(yǔ)言表達(dá)式______。

35.棧的3種基本運(yùn)算是:入棧、退棧和______。

36.以下程序的輸出是【】。

main()

{

charstr1[]="Howdoyoudo",*p1=str1;

strcpy(str1+strlen(str1)/2,"esshe");

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

}

37.一張3.5英寸軟盤(pán)大約能存儲(chǔ)140萬(wàn)個(gè)ASCⅡ字符,若存放漢字大約能存放【】個(gè)。

38.數(shù)據(jù)庫(kù)系統(tǒng)的主要特點(diǎn)為數(shù)據(jù)集成性、數(shù)據(jù)的高_(dá)_____和低冗余性、數(shù)據(jù)獨(dú)立性和數(shù)據(jù)統(tǒng)一管理和控制。

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

#include<stdio.h>

func(a,b)

{staticintm=0,i=2;

i+=m+1;

m=i+a+b;

return(m);

}

main()

{intk=5,m=3,p;

p=func(k,m);

printf("%d",p);

p=func(k,m);

printf("%d、n",p);

}

40.在結(jié)構(gòu)化分析使用的數(shù)據(jù)流圖中,使()解釋其中的圖形元素。

三、1.選擇題(20題)41.有以下程序: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);}程序運(yùn)行后的輸出結(jié)果是______。

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

42.若進(jìn)棧序列為1,2,3,4,進(jìn)棧過(guò)程中可以出棧,則下列不可能的一個(gè)出棧序列是______。

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

43.數(shù)據(jù)處理的最小單位是()。

A.數(shù)據(jù)B.數(shù)據(jù)元素C.數(shù)據(jù)項(xiàng)D.數(shù)據(jù)結(jié)構(gòu)

44.可以在C語(yǔ)言中用做用戶標(biāo)識(shí)符的是______。

A.voiddefineWORDB.as_b3_123IfC.for-abccasD.2cDoSIG

45.以下數(shù)據(jù)結(jié)構(gòu)中不屬于線性數(shù)據(jù)結(jié)構(gòu)的是______。

A.隊(duì)列B.線性表C.二叉樹(shù)D.棧

46.為了提高測(cè)試的效率,應(yīng)該()。

A.隨機(jī)選取測(cè)試數(shù)據(jù)

B.取一切可能的輸入數(shù)據(jù)作為測(cè)試數(shù)據(jù)

C.在完成編碼以后制定軟件的測(cè)試計(jì)劃

D.集中對(duì)付那些錯(cuò)誤群集的程序

47.有以下程序:#include<stdio.h>intfun(int*k){intb=0;b=*k+b:return(B);}main(){inta[10]={1,2,3,4,5,6,7,8},i;for(i=2;i<4;i++){printf("%d",fun(&a[i]));}printf("\n");}程序運(yùn)行后的輸出結(jié)果是()。

A.1012B.810C.34D.1028

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

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

49.C語(yǔ)言中,能識(shí)別處理的文件為

A.文本文件和數(shù)據(jù)塊文件B.文本文件和二進(jìn)制文件C.流文件和文本文件D.數(shù)據(jù)文件和二進(jìn)制文件

50.設(shè)有intx=11:表達(dá)式(x++*1/3)的值是()。

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

51.有以下程序int*f(znt*x,int*y){if(*x<*y)returnX;elsereturny;}main(){inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=f(p,q);printf("%d,%d.%d\n",*p,*q,*r);}執(zhí)行后輸出結(jié)果是

A.7,8,8B.7,8,7C.8,7,7D.8,7,8

52.有以下程序main(){inta,b,d=25;a=d/10%9;b=a&&(-1)printf("%d,%d\n",a,b);}程序運(yùn)行后的輸出結(jié)果是______。

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

53.以下不合法的用戶標(biāo)識(shí)符是______。A.j2KEYB.DoubleC.4dD._8_

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

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

55.下列程序的輸出結(jié)果是()。#inClude<stdio.h>main(){charch[2][5]={"1234","5678,},*p[2];inti,j,s=0;for(i=0;i<2;i++)p[i]=ch[i];for(i=0;i<2;i++)for(j=0;p[i][j]>'\0';j+=2){s=p[i][j]-'0';

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

56.下列條件語(yǔ)句中,功能與其他語(yǔ)句不同的是A.if(a)printf("%d\n",x);elseprintf("%d\n",y);

B.if(a==0)printf("%d\n",y);elseprintf("%d\n",x);

C.if(a!=0)printf("%d\n",x);elseprintf("%d\n",y);

D.if(a==0)printf("%d\n",x);elseprintf("%d\n",y);

57.在說(shuō)明語(yǔ)句int*f();中,標(biāo)識(shí)符f代表的是______。

A.一個(gè)用于指向整型數(shù)據(jù)的指針變量

B.—個(gè)用于指向—維數(shù)組的行指針

C.—個(gè)用于指向函數(shù)的指針變量

D.一個(gè)返回值為指針型的函數(shù)名

58.進(jìn)行二分法查找,則線形表______。

A.必須以順序方式存儲(chǔ)

B.必須以鏈接方式存儲(chǔ),且數(shù)據(jù)元素已按值排好序

C.必須以鏈接方式存儲(chǔ)

D.必須以順序方式存儲(chǔ),且數(shù)據(jù)元素已按值排好序

59.有以下函數(shù)定義:

voidfun(intn,doublex){……}

若以下選項(xiàng)中的變量都已正確定義并賦值,則對(duì)函數(shù)fun的正確調(diào)用語(yǔ)句是A.fun(inty,doublem);

B.k=fun(10,12.5);

C.fun(x,n);

D.voidfun(n,x);

60.索引屬于()。

A.模式B.內(nèi)模式C.外模式D.概念模式

四、選擇題(20題)61.以下定義語(yǔ)句中正確的是()。

A.

B.

C.

D.

62.

有下列程序段:

intn,t=1,S=0;

scanf("%d",&n);

do{s=s+t;t=t-2;while(t!=n);

為使此程序段不陷入循環(huán),從鍵盤(pán)輸入的數(shù)據(jù)應(yīng)該是()。

A.任意正奇數(shù)B.任意負(fù)偶數(shù)C.任意正偶數(shù)D.任意負(fù)奇數(shù)

63.C語(yǔ)言結(jié)構(gòu)體類型變量在程序執(zhí)行期間,()。

A.所有成員一直駐留在內(nèi)存中B.沒(méi)有成員駐留在內(nèi)存中C.部分成員駐留在內(nèi)存中D.只有一個(gè)成員駐留在內(nèi)存中

64.

65.有以下程序:

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

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

66.下列關(guān)于結(jié)構(gòu)型、共用型、枚舉型的定義語(yǔ)句中,正確的是()。

A.structss{intx}

B.unionuu{intx;}xx=5;

C.enumee{intx};

D.struct{intx;};

67.以下程序的功能是

#include<stdio.h>

main()

{FILE*fp1;*fp2;

fp1=fopen("file1","r");

fp2=fopen("file2","w");

while(!feof(fp1))

fputc(fgetc(fp1),fp2);

fclose(fp1);

fclose(fp2);

}

A.將磁盤(pán)文件的內(nèi)容顯示在屏幕上

B.將兩個(gè)磁盤(pán)文件合為一個(gè)

C.將一個(gè)磁盤(pán)文件復(fù)制到另一個(gè)磁盤(pán)文件中

D.將兩個(gè)磁盤(pán)文件合并后送屏幕

68.若有說(shuō)明:int*P,m=5,n;,以下正確的程序段是()。A.p=&n;scanf("%d",&p);

B.p=&n;scanf("%d",*p);

C.scanf("%d",&n);*p=n;

D.p=&n;*p=m;

69.(VC++)若有以下定義,則對(duì)b數(shù)組元素正確的引用是

intb[2][3]={1,2,3,4,5,6};A.b[1]B.b[0][3]C.b[2][2]D.b[1][1]

70.若有定義語(yǔ)句:inta[21[3],*P[3];則以下語(yǔ)句中正確的是()。

A.p:a;B.p[0]=a;C.p[O]=&a[1][2];D.1a[1]=&a;

71.

72.設(shè)x為int型變量,則執(zhí)行以下語(yǔ)句后,x的值為()。x=10;x=x-=x-x;

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

73.有以下程序:

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

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

74.

75.

76.

77.C語(yǔ)言用_______表示邏輯“真”值。

A.trueB.t或yC.非零整型值D.整型值0

78.

79.

80.

若有定義和語(yǔ)句:

int**pp),*P,a=20,b=10;

pp=&p;p=&a;p=&b;printf("%d,%d\n",*P,*PP);

則輸出結(jié)果是()。

A.20,10B.20,20C.10,20D.10,10

五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)fun的功能是:從整數(shù)l0-55,查找能被3整除且有一位上的數(shù)值是5的數(shù),把這些:故放在b所指的數(shù)組中,這些數(shù)的個(gè)數(shù)作為函數(shù)值返回。規(guī)定函數(shù)中al放位數(shù),a2放十位數(shù)。請(qǐng)改正程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)!試題程序:

六、程序設(shè)計(jì)題(1題)82.請(qǐng)編寫(xiě)一個(gè)函數(shù)intproc(int*s,intt,int*k),用來(lái)求出數(shù)組的最小元素在數(shù)組中的下標(biāo)并存放在k所指的存儲(chǔ)單元中。例如,輸入如下整數(shù):27393445362489342111831527246則輸出結(jié)果為4,89。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫(xiě)的若干語(yǔ)句。試題程序:

參考答案

1.C解析:#define宏名的有效范圍為定義命令之后到本源文件結(jié)束,可以在程序中使用#undef命令終止宏定義的作用域。本題由于#undef的作用,使a的作用范圍在#definea100到#undefa之間,故答案為C。

2.C

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

4.C題干中,數(shù)組a包含10個(gè)元素。其中a[5]為6,a[7]為8,a[1]為2,所以表達(dá)式“a[a[5]-a[7]/a[1]]”等價(jià)于“a[6-8/2]”,等價(jià)于a[2],即3。故本題答案為C選項(xiàng)。

5.A本題考查按位與運(yùn)算,按位與就是相同為1,不同為0,把x=011050化成二進(jìn)制為0001001000101000,把01252化成二進(jìn)制為0000001010101010,兩者相與得0000001000101000。

6.D解析:在for循環(huán)中用fpfinff(fp,'%d',i);將循環(huán)變量的值1~5輸出到fp指向的文件data.dat中,輸出3個(gè)數(shù)后換行。執(zhí)行rewind(fP)使文件指針重新返回到文件的開(kāi)頭,再執(zhí)行fscanf(fp,'%d%d',&k,&n)將磁盤(pán)文件中的前兩個(gè)數(shù)輸入給變量k,n,并將其輸出到屏幕上。

7.B

\n本題中要求輸出右上半角的數(shù),對(duì)角線上的數(shù)的下標(biāo)相同,所以j=i。

\n

8.A第1次調(diào)用為m=f(f(f(1))),第2次調(diào)用為m=f(f(2)),第3次調(diào)用為m=f(4),即返回值為8。故本題答案為A選項(xiàng)。

9.B該程序首先給一維數(shù)組賦值,然后三次調(diào)用fun函數(shù),其中fun(a,0,3);功能是將一維數(shù)組中第1個(gè)元素和第4個(gè)元素互換,第2個(gè)元素和第3個(gè)元素互換;其中fun(a,4,9);功能是將一維數(shù)組中第5個(gè)元素和第10個(gè)元素互換,第6個(gè)和第9個(gè)元素互換,第7個(gè)元素和第8個(gè)元素互換;其中fun(a.O,9);功能是將將一維數(shù)組中第l個(gè)元素和第10個(gè)元素互換,第2個(gè)元素和第9個(gè)元素互換……依此類推。因此B選項(xiàng)正確。

10.B

11.B程序的功能為統(tǒng)計(jì)1~9這9個(gè)數(shù)中的奇數(shù)和。C語(yǔ)言中規(guī)定數(shù)組名代表數(shù)組的首地址,也就是第1個(gè)元素的地址,因此“*(t+i)”代表數(shù)組的第i+1個(gè)元素。程序的運(yùn)行結(jié)果是1+3+5+7+9=25。故本題答案為B選項(xiàng)。

12.D程序設(shè)計(jì)是一門(mén)技術(shù),需要相應(yīng)的理論、技術(shù)、方法和工具來(lái)支持。程序設(shè)計(jì)的任務(wù)包括選項(xiàng)A)、B)、c)等方面。

13.DD)【解析】在關(guān)系中凡能惟一標(biāo)識(shí)元組的最小屬性集稱為該表的鍵或碼。二維表中可能有若干個(gè)鍵,它們稱為該表的候選碼或候選鍵。從二維表的所有候選鍵中選取一個(gè)作為用戶使用的鍵稱為主鍵或主碼。

14.D解析:“%”是求余運(yùn)算符,其兩側(cè)的數(shù)值只能為整型,不能用于實(shí)型數(shù)據(jù)的運(yùn)算。

15.B

16.B

17.A\\n和\\\\分別為轉(zhuǎn)義字符,各占據(jù)一個(gè)字符的位置。

18.D題干中,字符變量a、b、c、d都是大寫(xiě)字母字符。C語(yǔ)言中,大寫(xiě)字母的ASCII值是按照字母順序連續(xù)遞增的,所以a小于b,b小于c,c小于d。則表達(dá)式“x=(a<b)?a:b”等價(jià)于“x=a”;“x=(x>c)?c:x”等價(jià)于“x=(a>c)?c:a”,等價(jià)于“x=a”;“x=(d>x)?x:d”等價(jià)于“x=(d>a)?a:d”,等價(jià)于“x=a”;所以程序輸出x的值為A。故本題答案為D選項(xiàng)。

19.A選項(xiàng)A是非法的表達(dá)式,C語(yǔ)言中沒(méi)有“<>”運(yùn)算符。故本題答案為A選項(xiàng)。

20.A

21.3030解析:當(dāng)i=0時(shí),s=0+a[0][0]+a[0][2]=10;i=1時(shí),s=10+a[1][1]+a[1][1]=18;i=2時(shí),s=18+a[2][2]+a[2][0]=30。

22.10410\r\n4解析:結(jié)構(gòu)體變量所占內(nèi)存長(zhǎng)度是各成員占的內(nèi)存長(zhǎng)度之和。每個(gè)成員分別占有其自己的內(nèi)存單元。int占2個(gè)字節(jié),float占4個(gè)字節(jié),共用體變量所占的內(nèi)存長(zhǎng)度等于最長(zhǎng)的成員的長(zhǎng)度。所以,sizeof(a.share)的值是4,sizeof(a)的值是2+2+2+4=10。

23.n/2性表的任何位置插入一個(gè)元素的概率相等,即概率為p=1/(n+1),則插入一個(gè)元素時(shí)所需移動(dòng)元素的平均次數(shù)為E=1/(n+1)(n-i+1)=n/2。

24.關(guān)系關(guān)系解析:在關(guān)系數(shù)據(jù)庫(kù)中,用關(guān)系也就是二維表來(lái)表示實(shí)體之間的聯(lián)系。

25.100100解析:本題考查帶參數(shù)的宏定義及相關(guān)運(yùn)算。運(yùn)算過(guò)程為:k=B*20=(A+3)*20=(2+3)*20=100。

26.2424解析:本題程序定義了一維數(shù)組p,有七個(gè)數(shù)組元素,整型變量i,j初值分別為0,當(dāng)while的條件表達(dá)式(i<7&&p[i]%2==1)的值為真時(shí),執(zhí)行語(yǔ)句j+=p[i++];,如:當(dāng)i=0時(shí),i<7為真,p[i]%2=11%2=1,表達(dá)式(p[i]%2==1)的值為真,所以整個(gè)表達(dá)式(i<7&&p[i]%2==1)的值為真,執(zhí)行j=j+p[i++]=0+11=11,i=1;,依此類推可以得出答案24。

27.關(guān)系或一個(gè)關(guān)系關(guān)系或一個(gè)關(guān)系解析:在關(guān)系數(shù)據(jù)庫(kù)中,把數(shù)據(jù)表示成二維表,而一個(gè)二維表就是一個(gè)關(guān)系。

28.驅(qū)動(dòng)模塊驅(qū)動(dòng)模塊解析:在進(jìn)行模塊測(cè)試時(shí),要為每個(gè)被測(cè)試的模塊另外設(shè)計(jì)兩類模塊:驅(qū)動(dòng)模塊和承接模塊(樁模塊)。其中,驅(qū)動(dòng)模塊相當(dāng)于被測(cè)試模塊的主程序,它接收測(cè)試數(shù)據(jù),并傳給被測(cè)試模塊,輸出實(shí)際測(cè)試結(jié)果。承接模塊通常用于代替被測(cè)試模塊調(diào)用的其他模塊,其作用僅做少量的數(shù)據(jù)操作,是一個(gè)模擬子程序,不必將子模塊的所有功能帶入。

29.數(shù)據(jù)模型數(shù)據(jù)模型

30.軟件開(kāi)發(fā)

31.鏈?zhǔn)酱鎯?chǔ)和順序存儲(chǔ)鏈?zhǔn)酱鎯?chǔ)和順序存儲(chǔ)

32.100100解析:本題考查帶參數(shù)的宏定義及相關(guān)運(yùn)算。運(yùn)算過(guò)程為:k=B*20=(A+3)*20=(2+3)*20=100。

33.8484解析:函數(shù)f(y,*x)的作用是讓y的值加上指針x所指向變量的值,讓指針x所指向變量的值加上y的值。由于形參y是傳值的,形參x是傳地址的,故調(diào)用該函數(shù)后,作為實(shí)參的y的值將不改變,而實(shí)參x的值將改變,故最后輸出的y的值為4,而x的值為8。

34.x==0x==0解析:!x的邏輯意思就是x為非,即x==0。

35.讀棧頂元素讀棧頂元素解析:棧的基本運(yùn)算有3種:入棧、退棧和讀取棧頂元素。其中,入棧是指在棧頂插入一個(gè)新的元素;退棧是指取出棧頂元素并賦值給一個(gè)變量;讀棧頂元素是將棧頂元素賦值給一個(gè)指定的變量,不刪除棧頂元素。

36.HowdoessheHowdoesshe解析:strcpy(str1,s1);字符串拷貝函數(shù),作用是將字符串s1拷貝到字符數(shù)組strl中去。strlen(str):測(cè)試字符串str的長(zhǎng)度,函數(shù)的值為字符串中實(shí)際長(zhǎng)度,不包括\'\\0\'在內(nèi)。本題中strlen(str1)的值為13,則strcpy(strl+strlen(strl)/2,'esshe');相當(dāng)于strcpy(strl+6,'esshe');,因此可得答案為Howdoesshe

37.70萬(wàn)70萬(wàn)

38.共享性共享性解析:數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)能被不同的應(yīng)用程序使用,實(shí)現(xiàn)了數(shù)據(jù)的高度共享,從而降低了數(shù)據(jù)的冗余,這也是數(shù)據(jù)庫(kù)的主要目的。

39.11231123解析:在主函數(shù)中第一次調(diào)用func子函數(shù)時(shí),m=0,i=2,i=i+m+1=3,m=i+a+b=3+5+3=11。因?yàn)樵谧雍瘮?shù)中將m和i定義成了static類型,所以在子函數(shù)中對(duì)m和i進(jìn)行的改變?cè)谙乱淮握{(diào)用子函數(shù)時(shí)能進(jìn)行保存,所以第二次調(diào)用子函數(shù)時(shí),m=11,i=3,則i=i+m+1=15,m=i+a+b=15+5+3=23。

40.數(shù)據(jù)字典數(shù)據(jù)字典解析:數(shù)據(jù)字典的作用是對(duì)數(shù)據(jù)流圖中出現(xiàn)的披命名的圖形元素進(jìn)行確切解釋。通常數(shù)據(jù)字典包含的信心有名稱、別名、何處使用/如何使用、內(nèi)容描述、補(bǔ)充信息等。

41.A解析:本題考查while語(yǔ)句和if語(yǔ)句的嵌套,程序段實(shí)現(xiàn)的功能是將p[1]至p[7]中的奇數(shù)相加求和并輸出,j=13+15+17=45。

42.C解析:棧是一種后進(jìn)先出表,選項(xiàng)C中,先出棧的是3,說(shuō)明此時(shí)棧內(nèi)必然有1,2,由于1先于2進(jìn)淺,所以1不可能在2之前出棧,故選項(xiàng)C這種出棧序列是不可能的。

43.C解析:數(shù)據(jù)處理的最小單位是數(shù)據(jù)項(xiàng);由若干數(shù)據(jù)項(xiàng)組成數(shù)據(jù)元素;而數(shù)據(jù)是指能夠被計(jì)算機(jī)識(shí)別、存儲(chǔ)和加工處理的信息載體;數(shù)據(jù)結(jié)構(gòu)是指數(shù)據(jù)之間的相互關(guān)系和數(shù)據(jù)運(yùn)算。故正確答案為選項(xiàng)C)。

44.B解析:C語(yǔ)言規(guī)定,標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種符號(hào)組成,而且第一個(gè)字符必須是字母或下劃線。另外還需要注意的是關(guān)鍵字不能作標(biāo)識(shí)符。選項(xiàng)A中void,C中for都為關(guān)鍵字,D中2c以字母開(kāi)頭。

45.C解析:線性表、棧和隊(duì)列所表達(dá)和處理的數(shù)據(jù)以線性結(jié)構(gòu)為組織形式。棧是一種特殊的線性表,它只能在固定的一端進(jìn)行插入和刪除操作,又稱后進(jìn)先出表(LastInFirstOut);隊(duì)列是插入在一端進(jìn)行,刪除在另一端進(jìn)行的線性表,又稱先進(jìn)先出表(FirstInFirstOut)。

46.D本題主要考查軟件的測(cè)試。軟件測(cè)試的主要目的體現(xiàn)在下面幾個(gè)方面。

(1)軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程。

(2)一個(gè)好的測(cè)試用例能夠發(fā)現(xiàn)至今尚未發(fā)現(xiàn)的錯(cuò)誤。

(3)一個(gè)成功的測(cè)試是發(fā)現(xiàn)了至今尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。

軟件測(cè)試的效率是指利用更少的成本創(chuàng)造更多的價(jià)值,提供軟件測(cè)試效率的方法有很多,如制定一個(gè)合理的詳細(xì)的測(cè)試計(jì)劃,了解測(cè)試項(xiàng)目的業(yè)務(wù)需求,集中對(duì)付那些錯(cuò)誤群集的程序等。而選項(xiàng)A所描述的隨機(jī)選取測(cè)試數(shù)據(jù)是不能保證提高測(cè)試效率的,選項(xiàng)B描述的取一切可能的輸入數(shù)據(jù)作為測(cè)試數(shù)據(jù)顯然不能提高測(cè)試效率,反而使工作量加大,降低測(cè)試效率。

47.C

48.A

49.B解析:在計(jì)算機(jī)中,對(duì)于輸入輸出均采用數(shù)據(jù)流的形式。文件按照存取方式分為順序存取文件和隨機(jī)存取文件。按照存儲(chǔ)形式分為二進(jìn)制文件和文本文件。文本文件存儲(chǔ)的是一個(gè)ASCII碼,文件的內(nèi)容可以直接進(jìn)行輸入輸出。二進(jìn)制文件直接將字符存儲(chǔ),不能將二進(jìn)制文件的內(nèi)容直接輸出到屏幕上。所以,C語(yǔ)言所能夠處理文件是按照存放形式分為文本文件和二進(jìn)制文件。

50.A解析:自增運(yùn)算的優(yōu)先級(jí)高于其他雙目算術(shù)運(yùn)算符,同級(jí)算術(shù)運(yùn)算符結(jié)合性為自左向右。所以表達(dá)式(x++*1/3)等價(jià)于(x++)*1/3=11*1/3=3。

51.B解析:本題定義了一個(gè)返回值為指針的函數(shù)f(),此函數(shù)有兩個(gè)指針型的形參x和y)該函數(shù)的功能,是返回x和y指向的變量中值較小的那個(gè)指針變量。主函數(shù)中定義了兩個(gè)指針變量p和小并讓它們指向了變量a和b,調(diào)用函數(shù)f(),返回指向的變量值較小的指針變量,r的值為指針變量p的值(變量a的地址),因此最后輸出的*p、*q和,r的值是7,8和7。所以,B選項(xiàng)為所選。

52.B解析:本題主要考查的是C語(yǔ)言中的整除、求余以及邏輯值的概念。在C語(yǔ)言中,/號(hào)的兩邊如果都是整數(shù)的話,返回的結(jié)果也是整數(shù),如果除不凈則舍去小數(shù)部分。%是求余運(yùn)算,它的運(yùn)算對(duì)象只能是整型,運(yùn)算結(jié)果是兩數(shù)相除后所得的余數(shù),當(dāng)運(yùn)算量為負(fù)數(shù)時(shí),結(jié)果的符號(hào)與被除數(shù)相同。因此,執(zhí)行語(yǔ)句a=d/10%9;后,a=25/10%9=2%9=2。C語(yǔ)言中沒(méi)有專門(mén)的邏輯值,而是用整型值來(lái)代替。當(dāng)整型值作邏輯值使用時(shí),非零即表示“真”,零表示“假”,而邏輯值當(dāng)整型值使用時(shí),“真”等于1,“假”等于0。因此,執(zhí)行語(yǔ)句b=a&&(-1);后b=2&&(-1)=“真”&&“真”=“真”=1。所以,4個(gè)選項(xiàng)中選項(xiàng)B符合題意。

53.C解析:C語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種符號(hào)組成,而且第—個(gè)字符必須是字母或下劃線。大寫(xiě)字母和小寫(xiě)字母被認(rèn)為是兩個(gè)不同的字符,用戶在定義標(biāo)識(shí)符時(shí)應(yīng)做到“見(jiàn)名知意”,且不允許使用關(guān)鍵字作標(biāo)識(shí)符。

54.D解析:文件系統(tǒng)所管理的數(shù)據(jù)文件基本上是分散的、相互獨(dú)立的,因此相對(duì)于數(shù)據(jù)庫(kù)系統(tǒng),以此為基礎(chǔ)的數(shù)據(jù)處理存在3個(gè)缺點(diǎn),數(shù)據(jù)冗余大、數(shù)據(jù)的不一致性、程序與數(shù)據(jù)的相互依賴(簡(jiǎn)稱為數(shù)據(jù)依賴)。注意:文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)各自的特點(diǎn),人工管理階段及數(shù)據(jù)庫(kù)系統(tǒng)三代的特點(diǎn)。

55.B解析:第1次執(zhí)行for循環(huán),p[1][0]=p[1][0]-1=3;第2次執(zhí)行for循環(huán),p[1][1]=p[1][1]-1=4;第3次執(zhí)行for循環(huán),p[1][2]=1,最后輸出的是a[0][1]+a[1][1]+a[1][2]=2+4+1=7。

56.D解析:選項(xiàng)A、選項(xiàng)B和選項(xiàng)C都是在s的值為0的時(shí)候輸出y,a不為0的時(shí)候輸出x,而選項(xiàng)D是在a為0的時(shí)候輸出x,a不為0的時(shí)候輸出y。

57.D解析:帶回指針值的函數(shù),其—般定義形式為:

類型標(biāo)識(shí)符*函數(shù)名(參數(shù)表);

例如,int*f(x,y);

其中,f是函數(shù)名,調(diào)用它以后能得到—個(gè)指向整型數(shù)據(jù)的指針(地址),x,y是函數(shù)f的形參。在f的兩側(cè)分別為*運(yùn)算符和()預(yù)算符,而()優(yōu)先級(jí)高于*,因此f先與()結(jié)合,顯然是函數(shù)形式。這個(gè)函數(shù)前面有一個(gè)*,表示此函數(shù)是指針型函數(shù)(函數(shù)值是指針)。前面的int表示返回的指針指向整型變量。

58.D

59.C解析:選項(xiàng)A中應(yīng)將y和m前面的函數(shù)的類型說(shuō)明符去掉,故選項(xiàng)A不正確;選項(xiàng)B中函數(shù)傳了2個(gè)參數(shù),其中一個(gè)為整型一個(gè)為浮點(diǎn)型,而fun()函數(shù)在定義時(shí)聲明的2個(gè)參數(shù),一個(gè)為整型一個(gè)為雙精度型,其參數(shù)類型不一致,故選項(xiàng)B不正確;選項(xiàng)D在調(diào)用函數(shù)時(shí),不應(yīng)該再聲明其返回類型,故迭項(xiàng)D不正確.所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。

60.B解析:內(nèi)模式(InternalSchemA)又稱物理模式(PhysicalSchemA),它給出了數(shù)據(jù)庫(kù)物理存儲(chǔ)結(jié)構(gòu)與物理存取方法,如數(shù)據(jù)存儲(chǔ)的文件結(jié)構(gòu)、索引、集簇及hash等存取方式與存取路徑。數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)具有高共享性和低冗余性,但不能完全避免數(shù)據(jù)冗余;數(shù)據(jù)的一致性是指在系統(tǒng)中同一數(shù)據(jù)的不同出現(xiàn)應(yīng)保持相同的值。

61.C解析:選項(xiàng)A中兩個(gè)

溫馨提示

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