![2021-2022年湖南省株洲市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題(含答案)_第1頁(yè)](http://file4.renrendoc.com/view/f7518d7185d322caab4c0a04c4b2bd8a/f7518d7185d322caab4c0a04c4b2bd8a1.gif)
![2021-2022年湖南省株洲市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題(含答案)_第2頁(yè)](http://file4.renrendoc.com/view/f7518d7185d322caab4c0a04c4b2bd8a/f7518d7185d322caab4c0a04c4b2bd8a2.gif)
![2021-2022年湖南省株洲市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題(含答案)_第3頁(yè)](http://file4.renrendoc.com/view/f7518d7185d322caab4c0a04c4b2bd8a/f7518d7185d322caab4c0a04c4b2bd8a3.gif)
![2021-2022年湖南省株洲市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題(含答案)_第4頁(yè)](http://file4.renrendoc.com/view/f7518d7185d322caab4c0a04c4b2bd8a/f7518d7185d322caab4c0a04c4b2bd8a4.gif)
![2021-2022年湖南省株洲市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題(含答案)_第5頁(yè)](http://file4.renrendoc.com/view/f7518d7185d322caab4c0a04c4b2bd8a/f7518d7185d322caab4c0a04c4b2bd8a5.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2021-2022年湖南省株洲市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.第
22
題
閱讀下面程序,則程序執(zhí)行后的結(jié)果為
#include"stdio.h"
main()
{inta=4,b=6,c=7;
doubled,fun(int,int,int);
d=fun(a,b,c);
printf("%lf\n",d);}
doublefun(inta,intb,intc)
{doubles;
s=a%b*c;
returns;}
A.27B.27.000000C.28D.28.000000
2.若變量c為char類型,能正確判斷出c為小寫字母的表達(dá)式是A.A.′a′<=c<=′z′c="">=′a′)||(c<=′z′)
B.(′a′>=c)and(′z′>=c)
C.(′a′<=c)and(′z′>=c)
D.(c>=′a′)&&(c<=′z′)
3.以下說(shuō)法正確的是()。
A.C語(yǔ)言只接受十進(jìn)制的數(shù)
B.C語(yǔ)言只接受二進(jìn)制、八進(jìn)制、十六進(jìn)制的數(shù)
C.C語(yǔ)言只接受二進(jìn)制、十進(jìn)制、十六進(jìn)制的數(shù)
D.C語(yǔ)言只接受八進(jìn)制、十進(jìn)制、十六進(jìn)制的數(shù)
4.
5.
6.在位運(yùn)算中,操作數(shù)每右移一位,其結(jié)果相當(dāng)于()
A.操作數(shù)乘以2B.操作數(shù)除以2C.操作數(shù)除以16D.操作數(shù)乘以16
7.下列程序的輸出結(jié)果是()。#include<stdio.h>voidmain(){inta=0,b=1,c=2;if(++a>0‖++b>0)++c;printf("%d,%d,%d",a,b,c);}
A.0,1,2B.1,2,3C.1,1,3D.1,2,2
8.
9.
10.下面程序的輸出結(jié)果是()。
#include<stdio.h>
main()
{inta[4][5]={1,2,4,-4,5,-9,3,6,-3,2,7,8,4};
inti,j,n;
n=9;
i=n/5;
j=n-i*5-1;
printf("a[%d][%d]=%d\n",i,j,a[i][j]);
}
執(zhí)行后輸出結(jié)果是()。A.A.a[1][3]=6
B.a[1][3]=-3
C.a[1][3]=2
D.不確定
11.下列程序的輸出結(jié)果是()main(){intx=0,y=5,z=3;while(z-->0&&++x<5)y=y-1;printf(“%d,%d,%d\n”,x,y,z);}A.3,2,0B.3,2,-1C.4,3,-1D.5,-2,-5
12.以下敘述中正確的是()。
A.構(gòu)成C程序的基本單位是函數(shù)
B.可以在一個(gè)函數(shù)中定義另一個(gè)函數(shù)
C.main函數(shù)必須放在其他函數(shù)之前
D.C函數(shù)定義的格式是K&R格式
13.以下程序的運(yùn)行結(jié)果是______。#include<stdio.h>main(){inta[]:{1,2,3,4,5,6,7,8,9,10,11,12):int*p=a+5,*q=NULL:*q=*(p+5):printf("%d%d\n",*p,*q);}
A.運(yùn)行后報(bào)錯(cuò)B.66C.612D.55
14.以下不能輸出字符A的語(yǔ)句是(注:字符A的ASCIl碼值為65,字符a的ASCIl碼值為97)()。
A.print[("%c\n",a-32);
B.print[("%d\n",A);
C.printf("%c\n",65);
D.printf("%c\n",B-1);
15.設(shè)有如下函數(shù)定義:#include<stdio.h>intfun(intk){if(k<1)return0;elseif(k==1)return1;elsereturnfun(k-1)+1;}若執(zhí)行調(diào)用語(yǔ)句“n=fun(3);”,則函數(shù)fun總共被調(diào)用的次數(shù)是()。
A.2B.3C.4D.5
16.棧和隊(duì)列的共同特點(diǎn)是()。
A.都是先進(jìn)先出B.都是先進(jìn)后出C.只允許在端點(diǎn)處插入和刪除元素D.沒(méi)有共同點(diǎn)
17.稀疏矩陣一般的壓縮存儲(chǔ)方式有兩種,即()。
A.二維數(shù)組和三維數(shù)組B.三元組和散列C.三元組和十字鏈表D.散列和十字鏈表
18.已知小寫母a的ASCII碼為97,大寫字母A的ASCII碼為65,以下程序的結(jié)果是_______。main(){unsignedinta=32,b=66;printf("%c\n",a|B);}
A.66B.98C.bD.B
19.針對(duì)二分查找算法,假設(shè)一個(gè)有序數(shù)組有136個(gè)元素,那么要查找到第10個(gè)元素,需要比較的元素為()
A.68,34,17,9,13,11,10
B.68,34,17,8,12,10
C.69,35,18,10
D.68,34,18,9,13,11,10
20.有以下程序:#include<stdi0.h>main(){inta=1,b=2;for(;a<8;a++){b+=a;a+=2;)printf("%d,%d\n",a,b);}程序運(yùn)行后的輸出結(jié)果是()。A.9,18B.8,11C.7,11D.10,14
二、2.填空題(20題)21.下列的for語(yǔ)句的循環(huán)次數(shù)為______。
for(x=1,y=0;(y!=19)&&(x<7);x++);
22.以下程序的運(yùn)行結(jié)果是【】。
#defineMAL(a,b)(a>b?a:b)+1
main()
{inti=6,j=8;
printf("%d\n",MAL(i,j));
}
23.下列程序的運(yùn)行結(jié)果是______。
#include<stdio.h>
main()
{inta=10,b=3;
printf("%d,",a%b);
printf("%d,",(a-b,a+b));
printf("%d\n",a-b?a-b:a+b);
}
24.下列程序的運(yùn)行結(jié)果是______。
#definePOW(r)(r)*?
main()
{intx=3,y=2,t;
t=POW(x+y);
printf("%d\n",t);
}
25.以下程序的功能是:對(duì)輸入的一行字符串的數(shù)字字符按它們的字面值累加,輸出此累加和。例如,輸入一行字符是:ab34dh8u,輸出值應(yīng)當(dāng)是15。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
#include<ctype.h>
main()
{charch;inta,s;
【】;
while((ch=getchar())【】)
if(isdigit(ch))
{a=【】;s+=a;}
printf("s=%d\n\n",s);}
26.表示條件;10<x<100或x<0的C語(yǔ)言表達(dá)式是【】。
27.設(shè)有宏定義:
#defineWIDTH80
#defineLENGTHWIDTH+40
則執(zhí)行賦值語(yǔ)句“v=LENGTH*20;"(v為int型變量)后,v的值是【】。
28.假設(shè)線性表的長(zhǎng)度為n,則在最壞情況下,冒泡排序需要的比較次數(shù)為【】。
29.在關(guān)系模型中,若屬性A是關(guān)系R的主碼,屬性A的取值不能為空,稱為約束。
30.以下函數(shù)用來(lái)求出兩整數(shù)之和,并通過(guò)形參將結(jié)果傳回,請(qǐng)?zhí)畛渫暾?/p>
voidfunc(intx,inty,【】z)
{*z=x+y;
}
31.數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式分別為______模式、內(nèi)部級(jí)模式與外部級(jí)模式。
32.定義inta=5,b;,則執(zhí)行表達(dá)式b=++a*--a之后,變量b的值為【】。
33.在對(duì)文件進(jìn)行操作的過(guò)程中,若要求文件的位置指針重新指向文件的開頭,應(yīng)當(dāng)調(diào)用的函數(shù)是【】函數(shù)。
34.數(shù)據(jù)模型是數(shù)據(jù)庫(kù)系統(tǒng)中用于提供信息表示和操作手段的結(jié)構(gòu)形式。實(shí)際數(shù)據(jù)庫(kù)系統(tǒng)中所支持的數(shù)據(jù)模型主要有層次模型、網(wǎng)狀模型和【】3種。
35.設(shè)有下列宏定義:
#defineA2
#defineB(A+3)
則執(zhí)行賦值語(yǔ)句"k=B*20;"(k為int型變量)后,k的值是______。
36.數(shù)據(jù)庫(kù)的邏輯模型設(shè)計(jì)階段的任務(wù)是將______轉(zhuǎn)換成關(guān)系模式。
37.下程序的輸出結(jié)果是【】。
#include<stdio.h>
#defineMAX_COUNT4
voidfun()
main()
{intcount;
for(count=1;count<=MAX_COUNT;coun++)fun();
}
voidfun()
{staicinti;
i+=2;
printf(”%d,i);
}
38.下面程序的輸出是【】。
main()
{intarr[10],i,k=0;
for(i=0;i<10;i++)
arr[i]=i;
fov(i=1;i<4;i++)
k+=arr[i]+i;
printf("%d\n",k);}
39.設(shè)一棵完全二叉樹共有700個(gè)結(jié)點(diǎn),則在該二叉樹中有【】個(gè)葉子結(jié)點(diǎn)。
40.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
inta.b,c;
a=10;b=20;c=(a%b<)||{a/b>1);
printf("%d%d%dn",a,b,c);
}
三、1.選擇題(20題)41.能正確表示“當(dāng)x的取值在[1,10]和[100,110]范圍內(nèi)為真,否則為假”的表達(dá)式是()。
A.(x>=1)&&(x<=10)&&(x>=100)&&(x<=110)
B.(x>=1)‖(x<=10)‖(x>=100)‖(x<=110)
C.(x>=1)&&(x<=10)‖(x>=100)&&(x<=110)
D.(x>=1)‖x<=10)&&(x>=100)‖(x<=110)
42.與十進(jìn)制數(shù)96等值的二進(jìn)制是()
A.1100000B.10010110C.1100001D.1100011
43.sizeof(double)是()
A.一種函數(shù)調(diào)用B.一個(gè)雙精度型表達(dá)式C.一個(gè)整型表達(dá)式D.一個(gè)不合法的表達(dá)式
44.在對(duì)下列函數(shù)調(diào)用中,不正確的是()
A.max(a,b);B.max(3,a+b);C.max(3,5)D.intmax(a,b);
45.設(shè)有以下語(yǔ)句charx=3,y=6,z;z=x^y<<2;則z的二進(jìn)制值是
A.10100B.11011C.11100D.11000
46.對(duì)長(zhǎng)度為n的線性表進(jìn)行順序查找,在最壞情況下需要比較的次數(shù)為()。
A.125B.n/2C.nD.n+1
47.下面程序的輸出結(jié)果是main(){inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf("%d\n",*(p+2));}
A.3B.4C.1D.2
48.當(dāng)向一棵m階的B-樹做插入操作時(shí),若一個(gè)結(jié)點(diǎn)中的關(guān)鍵字個(gè)數(shù)等于______,則必須分裂為2個(gè)結(jié)點(diǎn)。
A.mB.m-1C.m+1D.m/2
49.在int(*prt)[3];定義中,標(biāo)識(shí)符prt()。
A.定義不合法
B.是一個(gè)指針數(shù)組名,每個(gè)元素都是一個(gè)指向整型變量的指針
C.是一個(gè)指針,它指向一個(gè)具有三個(gè)元素的一維數(shù)組
D.是一個(gè)指向整型變量的指針
50.在下列語(yǔ)句中,其含義為“q為一個(gè)指針的函數(shù),該指針指向整型數(shù)據(jù)”的定義語(yǔ)句是()。
A.int**q;B.int(*q)0;C.int*q;D.int*q();
51.下列程序段的輸出結(jié)果為()。#include<stdio.h>main(){staticchara[]="language";char*p;p=a;for(p=a;p<a+8;p+=2)putchar(*p);}
A.1B.4C.9D.0
52.下列敘述中錯(cuò)誤的是()。
A.線性表是由n個(gè)元素組成的一個(gè)有限序列
B.線性表是一種線性結(jié)構(gòu)
C.線性表的所有結(jié)點(diǎn)有且僅有一個(gè)前件和后件
D.線性表可以是空表
53.
執(zhí)行下列程序中的輸出語(yǔ)句后,a的值是()。
main
{inta;
printf("%d\n",(a=2*3,a*5,a+7));
}
A.17B.37C.6D.13
54.執(zhí)行下面程序后,a的值是()main(){inta;printf("%d\n",(a=3*5,a*4,a+5));}
A.65B.20C.15D.10
55.請(qǐng)讀程序:#include<stdio.h>main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1){b+=3;continue;}b-=5;}printf("%d\n",a);}上面程序的輸出結(jié)果是()。
A.7B.8C.9D.10
56.下面程序運(yùn)行的結(jié)果是______。main(){intx,y,z;x=0;y=z=-1;x+=-z---y;printf("x=%d\n",x);}
A.x=4B.x=0C.x=2D.x=3
57.根據(jù)C語(yǔ)言的語(yǔ)法規(guī)則,下列字符串中哪些是關(guān)鍵字或保留字()
A.automateB.readerC.staticD.input
58.為了使模塊盡可能獨(dú)立,要求()。
A.模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量強(qiáng)
B.模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量弱
C.模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量弱
D.模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量強(qiáng)
59.若函數(shù)調(diào)用時(shí)的實(shí)參為變量時(shí),以下關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是()。
A.函數(shù)的實(shí)參和其對(duì)應(yīng)的形參共占同一存儲(chǔ)單元
B.形參只是形式上的存在,不占用具體存儲(chǔ)單元
C.同名的實(shí)參和形參占同一存儲(chǔ)單元
D.函數(shù)的形參和實(shí)參分別占用不同的存儲(chǔ)單元
60.有以下程序(提示:程序中fseek(fp,-2L*sizeof(int),SEEK_END);語(yǔ)句的作用是使位置指針從文件末尾向前移2*sizeof(int)字節(jié))#include<stdio.h>main(){FILE*fp;inti,a[4]={1,2,3,4},b;fp=fopen("data.dat","wb");for(i=0;i<4;i++)fwrite(&a[i],sizeof(int),1,fp);fclose(fp);fp=fopen("data.dat","rb");fseek(fp,-2L*sizeof(int),SEEK_END);fread(&b,sizeof(int),1,fp);/*從文件中讀取sizeof(int)字節(jié)的數(shù)據(jù)到變量b中*/felose(fp);printf("%d\n",b);}執(zhí)行后輸出結(jié)果是
A.2B.1C.4D.3
四、選擇題(20題)61.有以下程序:
程序的運(yùn)行結(jié)果是()。
A.xy,aaaaCeB.aaaaCC,xyC.bCC,aabCCD.aabCC,bCC
62.
63.
64.
65.以下敘述中錯(cuò)誤的是()。
A.用戶定義的函數(shù)中可以沒(méi)有return語(yǔ)句
B.用戶定義的函數(shù)中可以有多個(gè)return語(yǔ)句,以便可以調(diào)用一次返回多個(gè)函數(shù)值
C.用戶定義的函數(shù)中若沒(méi)有reillnl語(yǔ)句,則應(yīng)當(dāng)定義函數(shù)為void類型
D.函數(shù)的retU/Tl語(yǔ)句中可以沒(méi)有表達(dá)式
66.有以下結(jié)構(gòu)體說(shuō)明、變量定義和賦值語(yǔ)句:
則以下scanf函數(shù)調(diào)用語(yǔ)句有錯(cuò)誤的是()。
A.scanf(”%s”,s[0].name);
B.scanf(”%d”,&s[0].a(chǎn)ge);
C.scanf(”%c”,&(ps一>sex));
D.scanf(”%d”,ps一>age):
67.軟件設(shè)計(jì)中衡量模塊獨(dú)立性的度量標(biāo)準(zhǔn)是()。
A.抽象和信息隱蔽B.局部化和封裝化C.內(nèi)聚性和耦合性D.激活機(jī)制和控制方法
68.
69.以下程序運(yùn)行后的輸出結(jié)果是()。
A.zB.0C.元素Ch[5]地址D.字符y的地址
70.
71.
設(shè)變量已正確定義,則以下能正確計(jì)算f=n!的程序是()。
A.f=0:for(i=1;i<=n;i++)f*=i:
B.F=1:for(i=l;i<2n;i++)f*=i:
C.f=l:for(i=n;i>1;i++)f*=i:
D.f=1;for(i=n;i>=2;i--)f*=i:
72.
73.若有說(shuō)明語(yǔ)句:double*p,a;則通過(guò)scanf語(yǔ)句正確給輸入項(xiàng)讀入數(shù)據(jù)的程序段是()。A.A.*p=&a;scanf("%1f”,p);
B.*p=&a;scanf("%f",p);
C.p=&a;scanf("%",*p);
D.p=&a;scanf("%1f",p);
74.
75.以下選項(xiàng)中正確的語(yǔ)句組是()。
76.以下程序段中的變量已正確定義。
for(i=0;i<;4;i++,i++)
for(k=1;k<;3;k++);prinff(”*”);該程序段的輸出結(jié)果是()。
A.*B.****C.**D.********
77.在結(jié)構(gòu)化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是______。
A.詳細(xì)設(shè)計(jì)B.需求分析C.總體設(shè)計(jì)D.編程調(diào)試
78.若有定義語(yǔ)句:doublex,y,*px,+py;,執(zhí)行Tpx=&x;py=&y之后,正確的輸入語(yǔ)句是()。
79.以下程序執(zhí)行后的輸出結(jié)果是()。
A.5,5
B.5,11
C.11,11
D.11,5
80.數(shù)據(jù)庫(kù)設(shè)計(jì)中反映用戶對(duì)數(shù)據(jù)要求的模式是()。
A.內(nèi)模式B.概念模式C.外模式D.設(shè)計(jì)模式
五、程序改錯(cuò)題(1題)81.給定程序中,函數(shù)proc()的功能是:使數(shù)組中的元素的值增加10倍。修改其中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.請(qǐng)編寫fun()函數(shù),其功能是:計(jì)算并輸出3~m所有素?cái)?shù)的平方根之和。例如,若主函數(shù)從鍵盤給m輸入50后,則輸出為s=63.665791。注意:m的值要大于2但不大于l00。部分源程序給出如下。請(qǐng)勿改動(dòng)main()函數(shù)與其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入所編寫的若干語(yǔ)句。試題程序:
參考答案
1.D
2.D
3.DC語(yǔ)言中,整型常量可以用十進(jìn)制、八進(jìn)制和十六進(jìn)制表示。故本題答案為D選項(xiàng)。
4.B
5.C
6.B
7.C解析:本題考查if語(yǔ)句。先判斷if語(yǔ)句的條件是否成立,++a=1>0,此條件成立,又因?yàn)槭沁M(jìn)行邏輯或運(yùn)算,在已知其中一個(gè)運(yùn)算對(duì)象為真的情況下,不必判斷另外一個(gè)運(yùn)算符的真假,即不進(jìn)行++b操作,就可以直接得出整個(gè)表達(dá)式的值為邏輯1,執(zhí)行下列的++c。
8.A
9.B
10.Bn=9,i=n/5=1;j=9-1*5-1=3,輸出為a[1][3]=-3
11.B解析:本題的執(zhí)行過(guò)程是:
在While循環(huán)中,
比較xyz
第—次:3>0&&1<5142
第二次:2>0&&2<5231
第三次:1>0&&3<5320
判斷條件“z-->0”不成立,也不執(zhí)行“i+=2”語(yǔ)句,循環(huán)結(jié)束,因此,輸出結(jié)果為3,2,-1。
12.A解析:本題考查C語(yǔ)言的綜合基礎(chǔ)知識(shí)。構(gòu)成C程序的基本單位是函數(shù),一個(gè)C程序總是從main函數(shù)開始執(zhí)行,而不論main函數(shù)在整個(gè)程序中的位置如何。C語(yǔ)言的函數(shù)定義都是互相平行、獨(dú)立的,在定義函數(shù)時(shí),一個(gè)函數(shù)內(nèi)不能定義另一個(gè)函數(shù)。C函數(shù)定義的一般格式有兩種:傳統(tǒng)格式和現(xiàn)代格式。傳統(tǒng)格式也稱K&R格式,是早期編譯系統(tǒng)使用的格式;現(xiàn)代格式又稱ANSI格式,是現(xiàn)代編譯系統(tǒng)使用的格式。
13.A
14.B在C語(yǔ)言中%d表示輸出整型數(shù)值,所以答案為B。
15.B執(zhí)行調(diào)用語(yǔ)句“n=fun(3);”,3被當(dāng)作實(shí)參傳遞進(jìn)去,進(jìn)行了一次調(diào)用。3被當(dāng)作實(shí)參傳進(jìn)去后,程序會(huì)執(zhí)行“elsereturnfun(k-1)+1;”,函數(shù)被調(diào)用了第2次,參數(shù)是3-1,也就是2。2被當(dāng)作參數(shù)傳進(jìn)去后,程序會(huì)執(zhí)行“elsereturnfun(k-1)+1;”函數(shù)被調(diào)用了第3次,參數(shù)是2-1,也就是1。1被當(dāng)作實(shí)參傳進(jìn)去后,程序會(huì)執(zhí)行“elseif(k==1)return1;”,函數(shù)不再被遞歸調(diào)用。所以最終結(jié)果為3次。故本題答案為B選項(xiàng)。
16.C解析:考查棧和隊(duì)列概念的掌握。棧和隊(duì)列都是一種特殊的操作受限的線性表,只允許在端點(diǎn)處進(jìn)行插入和刪除。二者的區(qū)別是:棧只允許在表的一端進(jìn)行插入或刪除操作,是一種'后進(jìn)先出'的線性表;而隊(duì)列只允許在表的一端進(jìn)行插入操作,在另一端進(jìn)行刪除操作,是一種'先進(jìn)先出'的線性表。模塊之間的耦合程度反映了模塊的獨(dú)立性,也反映了系統(tǒng)分解后的復(fù)雜程度。按照耦合程度從弱到強(qiáng),可以將其分成5級(jí),分別是:數(shù)據(jù)耦合、同構(gòu)耦合、控制耦合、公用耦合和內(nèi)容耦合。選項(xiàng)C),沒(méi)有這種耦合方式。
17.C
18.C解析:位運(yùn)算符“|”的作用是按位或,即兩個(gè)二進(jìn)制數(shù)的相應(yīng)位中只要有一個(gè)為1,該位的結(jié)果值為1。最后以字符型輸出,98對(duì)應(yīng)的字符“b”
19.B
20.D第一次執(zhí)行循環(huán)前,a=1,滿足a<8,執(zhí)行循環(huán)后,b=3,a=3。執(zhí)行完a++操作后,a=4。由于a<8,執(zhí)行第二次循環(huán)后,b=7,a=6,執(zhí)行完a++操作后,a=7。由于a<8,執(zhí)行第三次循環(huán)后,b=14,a=9,執(zhí)行完a++操作后a=10。此時(shí)不滿足a<8,跳出循環(huán)。
21.66解析:分析程序可知,每循環(huán)一次,x的值加1,然后檢測(cè)循環(huán)控制條件(y!=19)&&(x<7),因y的值不變,故滿足x<7時(shí)循環(huán)6次。
22.99解析:用i和j替換宏MAL(a,b)小的參數(shù)a和b,(a>b?a:b)+1等價(jià)于(i>j?i:j)+1。因?yàn)?>8為假,則關(guān)系表達(dá)式i>j?i:j的值就是j的值,j=8,8+1=9,最后輸出9。
23.11371,13,7解析:本題考查3個(gè)知識(shí)點(diǎn):①余數(shù)的計(jì)算,題中的a=10,b=3,a%b=1;②(表達(dá)式1,表達(dá)式2)形式的結(jié)果為最后一個(gè)表達(dá)式的值,題中的a=10,b=3,(a-b,a+b)=a+b=13;③條件運(yùn)算符的使用,題中的a-b?a-b:a+b,判斷語(yǔ)句a-b=7不為0,所以執(zhí)行a-b,結(jié)果為7。
24.解析:本題考查帶參數(shù)的宏的定義及相關(guān)運(yùn)算。運(yùn)算過(guò)程為:t=POW(x+y)=(2+3)*(2+3)=25。25.s=0\r\n!='\\n'\r\nch-'0's=0\r\n!='\\n'\r\nch-'0'解析:按照題目的要求,s用于保存累加結(jié)果;while語(yǔ)句用于得到一個(gè)字符串,并以'\\n'結(jié)束;if語(yǔ)句用于判斷一個(gè)字符是否為數(shù)值型,如果是就將其累加至s中。
26.(x>10&&x<100)||x<0
27.880
28.n(n-1)/2
29.實(shí)體完整性實(shí)體完整性
30.int*int*解析:從函數(shù)體中可看出,2是一個(gè)指向整型的指針,該函數(shù)的形參z是傳地址調(diào)用。
31.概念(或概念級(jí))概念(或概念級(jí))
32.2525解析:#NAME?
33.rewind或fseekrewind或fseek解析:本題考查文件的定位。在對(duì)文件進(jìn)行操作的過(guò)程中,若要求文件的位置指針回到文件的開頭,可以調(diào)用rewind函數(shù)或fseek函數(shù)來(lái)完成。其中,rewind函數(shù)的作用是將位置指針重新返回文件的開頭;而fseek函數(shù)也可以實(shí)現(xiàn)文件指針的定位。
34.關(guān)系模型關(guān)系模型
35.100100解析:本題考查帶參數(shù)的宏定義及相關(guān)運(yùn)算。運(yùn)算過(guò)程為:k=B*20=(A+3)*20=(2+3)*20=100。
36.E-R圖E-R圖解析:數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的任務(wù)是將概念模型進(jìn)一步轉(zhuǎn)化成相應(yīng)的數(shù)據(jù)模型。而E-R圖是主要的概念模型,因此數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)的主要工作是將E-R圖轉(zhuǎn)換成關(guān)系模式。
37.2468(若字符間有空格扣1分)2468(若字符間有空格扣1分)
38.1212解析:本題通過(guò)第一個(gè)for循環(huán)將數(shù)組arr[0]=arr[9]分別賦值為0-9,通過(guò)第二個(gè)for循環(huán)的三次循環(huán)累加,求出結(jié)果為12,具體分析如下:
i=1:k=0+arr[1]+1即k=2;
i=2:k=2+arr[2]+2即k=6;
i=3:k=6+arr[3]+3即k=12:
39.350350解析:在任意一棵二叉樹中,度為0的結(jié)點(diǎn)(即葉子結(jié)點(diǎn))總是比度為2的結(jié)點(diǎn)多一個(gè)。在根據(jù)完全二叉樹的定義,在一棵完全二叉樹中,最多有1個(gè)度為1的結(jié)點(diǎn)。因此,設(shè)一棵完全二叉樹具有n個(gè)結(jié)點(diǎn),若n為偶數(shù),則在該二叉樹中有n/2個(gè)葉子結(jié)點(diǎn)以及n/2-1個(gè)度為2的結(jié)點(diǎn),還有1個(gè)是度為1的結(jié)點(diǎn):若n為奇數(shù),則在該二叉樹中有[n/2]+1個(gè)葉子結(jié)點(diǎn)以及[n/2]個(gè)度為2的結(jié)點(diǎn),沒(méi)有度為1的結(jié)點(diǎn)。本題中,完全二叉樹共有700個(gè)結(jié)點(diǎn),700是偶數(shù),所以,在該二叉樹中有350個(gè)葉子結(jié)點(diǎn)以及349個(gè)度為2的結(jié)點(diǎn),還有1個(gè)是度為1的結(jié)點(diǎn)。所以,本題的正確答案為350。
40.1020010200解析:本題的關(guān)鍵在于求表達(dá)式(a%b<1)‖a/b>1)的值。已知a=10,b=20,所以a%b=10,因此(a%b<1)為“假”。而a/b=0,因此(a/b>1)亦為“假”。,D運(yùn)算的兩邊同時(shí)為“假”,所以整個(gè)表達(dá)式的值為?!凹佟?,即c等于0。所以,本題最終輸出為:10200。
41.C解析:本題考查邏輯與(&&)和邏輯或(‖)運(yùn)算符的使用。x>=1和x<=10是邏輯與的關(guān)系,因此C語(yǔ)言表達(dá)式應(yīng)寫成“(x>=1)&&(x<=10)”,x>=100和x<=110也是邏輯與的關(guān)系,因此C語(yǔ)言表達(dá)式應(yīng)寫成“(x>=100)&&(x<=110)”;[1,10]和[100,110]是邏輯或的關(guān)系,因此只要將前兩個(gè)表達(dá)式用邏輯或運(yùn)算符連接起來(lái)即可,所以最后的表達(dá)式:(x>=1)&&(x<=10)‖(x>=100)&&(x<=110)。
42.A
43.C
44.D
45.B解析:本題考查兩個(gè)位運(yùn)算符。按位異或運(yùn)算符“”’是雙目運(yùn)算符,其功能是參與運(yùn)算的兩數(shù)各對(duì)應(yīng)的二進(jìn)位相異或,當(dāng)兩對(duì)應(yīng)的二進(jìn)位相異或時(shí),結(jié)果為1。左移運(yùn)算符“<<”是雙目運(yùn)算符,其功能把“<<”左邊的運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由“<<”右邊的數(shù)指定移動(dòng)的位數(shù),高位丟棄,低位補(bǔ)0,并且“<<”運(yùn)算符的優(yōu)先級(jí)于“^”。
46.CC。【解析】對(duì)線性表進(jìn)行順序查找時(shí),從表中的第一個(gè)元素開始,將給定的值與表中逐個(gè)元素的關(guān)鍵字進(jìn)行比較,直到兩者相符,查找到所要找的元素為止。在最壞情況下,要查找的元素是表的最后一個(gè)元素或查找失敗,這兩種情況都需要將這個(gè)元素與表中的所有元素進(jìn)行比較,因此比較次數(shù)為n。
47.A解析:在C語(yǔ)言中,數(shù)組元素是從0開始的。指針變量p指向數(shù)組的首地址,(p+2)就會(huì)指向數(shù)組中的第3個(gè)元素。題目中要求輸出的是元素的值。
48.A
49.C解析:此題的關(guān)鍵是要分清指針數(shù)組與指向一維數(shù)組指針之間的不同,題中的說(shuō)明語(yǔ)句定義了一個(gè)指針變量prt,它指向包含三個(gè)整數(shù)元素的一維數(shù)組。要注意:*prt兩側(cè)的圓括號(hào)不能缺少,如果寫成*ptr[3],則ptr與[3]先結(jié)合,是數(shù)組,然后再與前面的。號(hào)結(jié)合,則*ptr[3]將是一個(gè)指針數(shù)組。
50.B解析:本題考查的是指針函數(shù)。指針函數(shù)定義的基本格式:類型說(shuō)明符(*函數(shù)名)()。其中,類型說(shuō)明符表示返回的指針值指向的數(shù)據(jù)類型。
51.D解析:本題主要是考查帶參數(shù)的宏定義及其相關(guān)運(yùn)算。本題中宏運(yùn)算過(guò)程如下:a=a/(S(k+m)/S(k+m))=a/(k+m*k+m/k+m*k+m)=9/(3+2*3+2/3+2*3+2)=0。
52.CC.【解析】線性表是一種線性結(jié)構(gòu),由n(n≥0)個(gè)元素組成,所以線性表可以是空表。但是在線性表中,第一個(gè)結(jié)點(diǎn)沒(méi)有前件,最后一個(gè)結(jié)點(diǎn)沒(méi)有后件,其他結(jié)點(diǎn)有且只有一個(gè)前件和后件,所以選項(xiàng)C.是錯(cuò)誤的。
53.C解析:本題考查逗號(hào)表達(dá)式。本題的返回值是a+7,a=2*3=6,a+7=13(注意:本題問(wèn)的是a的值,而不是程序的輸出值)。
54.B
55.B解析:本題考查break語(yǔ)句和continue語(yǔ)句。程序要輸出循環(huán)結(jié)束時(shí)循環(huán)變量a的值,執(zhí)行第一次循環(huán)時(shí),條件(b%3==1)為真,b=4,繼續(xù)下一次循環(huán),如此反復(fù),當(dāng)b=22時(shí),條件(b>=20)為真,跳出循環(huán),此時(shí)共循環(huán)8次,即a=8。
56.C解析:表達(dá)式“x+=-z---y”等價(jià)于“x=x+(-z-(-(-y)))=0+(1-(-1))=2”。
57.C
58.B解析:模塊獨(dú)立性是指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡(jiǎn)單。耦合性與內(nèi)聚性是模塊獨(dú)立性的兩個(gè)定性標(biāo)準(zhǔn),耦合與內(nèi)聚是相互關(guān)聯(lián)的。在程序結(jié)構(gòu)中,各模塊的內(nèi)聚性越強(qiáng),則耦合性越弱。一般較優(yōu)秀的軟件設(shè)計(jì),應(yīng)盡量做到高內(nèi)聚,低耦合,即減弱模塊之間的耦合性和提高模塊內(nèi)的內(nèi)聚性,有利于提高模塊的獨(dú)立性。本題答案為B。
59.D解析:在定義函數(shù)時(shí)函數(shù)名后面括弧中的變量名稱為“形式參數(shù)”(簡(jiǎn)稱形參),在主調(diào)函數(shù)中調(diào)用一個(gè)函數(shù)時(shí),函數(shù)名后面括弧中的參數(shù)(可以是一個(gè)表達(dá)式)稱為“實(shí)際參數(shù)”(簡(jiǎn)稱實(shí)參)。C語(yǔ)言規(guī)定,實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只由實(shí)參傳給形參,而不能由形參傳回來(lái)給實(shí)參。在內(nèi)存中,實(shí)參單元與形參單元是不同的單元。故本題應(yīng)該選擇D。
60.D解析:函數(shù)fopen(eonstchar*filename,cortstchar*mode)的功能是以mode指定的模式打開filename指定的磁盤文件;fclose(FILE*fp)的功能是關(guān)閉文件指針fp指向的文件;函數(shù)fscanf(FILE*fp,constchar*format[address,--))的功能是根據(jù)for-mat中的格式從fp指向的文件中讀取數(shù)據(jù),并存入到相應(yīng)的address指向的變量中。函數(shù)fprintf(FILE*fp,constchar*format[,argument,--])的功能是把a(bǔ)rgument列表中的表達(dá)式值寫到fp所指向的文件中;函數(shù)fwrlte(void*ptr,intsize,intn,F(xiàn)ILE*fP)的功能是把ptr指向的緩沖區(qū)中的size×n個(gè)字節(jié)寫到文件指針fP指向的文件中。本題中首先定義了一個(gè)文件指針fp,然后通過(guò)函數(shù)fopen以“wb”的方式打開文件“data.dat”,直接通過(guò)一個(gè)for循環(huán),每循環(huán)一次調(diào)用函數(shù)fwrite將數(shù)組中的元素a[i]的值寫進(jìn)fp所指的文件中,該循環(huán)共循環(huán)4次,循環(huán)完后fp所指文件的內(nèi)容為123,然后通過(guò)fclose函數(shù)關(guān)閉fp所指文件。接著通過(guò)函數(shù)fopen以“rb”的方式打開文件“data.dat”,通過(guò)fseek函數(shù)讓指針fp從文件末尾向前移動(dòng)2個(gè)int型大小字節(jié)的,然后通過(guò)函數(shù)fread從fp所指的文件中讀取一個(gè)int型大小的數(shù)據(jù)到變量b中,故此時(shí)b的值為3,因此最后輸出的b的值為3。
61.A函數(shù)fun(char*s[],intn)的功能是對(duì)字符串?dāng)?shù)組的元素按照字符串的長(zhǎng)度從小到大排序。在主函數(shù)中執(zhí)行fun(ss,5)語(yǔ)句后,*ss[]={“xy”,“bcc”,“bbcc”,“aabcc”,“aaaacc”},ss[0],ss[4]的輸出結(jié)果為xy,aaaacc。所以選項(xiàng)A)為正確答案。
62.A
63.B
64.C
65.B本題重點(diǎn)考察函數(shù)返回值的相關(guān)知識(shí),函數(shù)的值只能通過(guò)returll語(yǔ)句返回主調(diào)函數(shù),在函敦中允許有多個(gè)return語(yǔ)句,但每次調(diào)用只能有一個(gè)return語(yǔ)句t執(zhí)行,因此只能返回一個(gè)函數(shù)值。不返回函數(shù)值的函數(shù),可以明確定義為“空類型”,類型說(shuō)明符為“void”。因此B選項(xiàng)正確。
66.D本題考查結(jié)構(gòu)體的相關(guān)知識(shí),題目中需要輸入一個(gè)變量,scanf要求參數(shù)為指針,而D選項(xiàng)中ps一>age為一個(gè)變量,不是指針,所以錯(cuò)誤。
67.C耦合性與內(nèi)聚性是模塊獨(dú)立與否的兩個(gè)定性標(biāo)準(zhǔn),耦合與內(nèi)聚是相互關(guān)聯(lián)的。在程序結(jié)構(gòu)中,各模塊的內(nèi)聚性越強(qiáng),則耦合性越弱。一般較優(yōu)秀的軟件設(shè)計(jì),應(yīng)盡量做到高內(nèi)蒙、低耦合,即減弱模塊之間的耦合性而提高模塊內(nèi)的內(nèi)聚性,這樣有利于提高模塊的獨(dú)立性。
68.D
69.A表達(dá)式*(pc+5)先將指針向后移動(dòng)5
70.A
71.D由i"11的數(shù)字定義可知n!=n*(n-1)*(n-2)*…*1。在選項(xiàng)A中,由于f的初值為0,在for循環(huán)語(yǔ)句中,f依次乘以1,2
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB 45185-2024眼視光產(chǎn)品成品眼鏡安全技術(shù)規(guī)范
- SMARCA2-ligand-13-生命科學(xué)試劑-MCE-7252
- Nonanoylcarnitine-C9-carnitine-生命科學(xué)試劑-MCE-3656
- CP-LC-1254-生命科學(xué)試劑-MCE-4991
- 3-Hydroxy-desalkylflurazepam-生命科學(xué)試劑-MCE-8942
- 二零二五年度瓷磚產(chǎn)品出口退稅代理服務(wù)合同
- 二零二五年度泳池水上運(yùn)動(dòng)項(xiàng)目推廣合作合同
- 二零二五年度環(huán)境污染責(zé)任賠償調(diào)解協(xié)議
- 質(zhì)量控制在提高實(shí)驗(yàn)室效率中的作用
- 城市隧道工程施工質(zhì)量驗(yàn)收規(guī)范
- 2025年湖南高速鐵路職業(yè)技術(shù)學(xué)院高職單招高職單招英語(yǔ)2016-2024年參考題庫(kù)含答案解析
- 2025江蘇太倉(cāng)水務(wù)集團(tuán)招聘18人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2024-2025學(xué)年人教新版高二(上)英語(yǔ)寒假作業(yè)(五)
- 2025脫貧攻堅(jiān)工作計(jì)劃
- 借款人解除合同通知書(2024年版)
- 《血小板及其功能》課件
- 江蘇省泰州市靖江市2024屆九年級(jí)下學(xué)期中考一模數(shù)學(xué)試卷(含答案)
- 沐足店長(zhǎng)合同范例
- 《旅游資料翻譯》課件
- 《既有軌道交通盾構(gòu)隧道結(jié)構(gòu)安全保護(hù)技術(shù)規(guī)程》
評(píng)論
0/150
提交評(píng)論