版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2021-2022年貴州省安順市全國計算機(jī)等級考試C語言程序設(shè)計測試卷一(含答案)學(xué)校:________班級:________姓名:________考號:________
一、單選題(20題)1.下列關(guān)于棧敘述正確的是A.棧頂元素最先能被刪除B.棧頂元素最后才能被刪除C.棧底元素永遠(yuǎn)不能被刪除D.以上三種說法都不對
2.有以下程序:#include<stdio.h>main(){inta=7;while(a--);print[("%d\n",a);}程序運(yùn)行后的輸出結(jié)果是()。A.-1B.0C.1D.7
3.具有10個葉子結(jié)點(diǎn)的二叉樹中有()個度為2的結(jié)點(diǎn)。
A.8B.9C.10D.11
4.對n個數(shù)進(jìn)行排序,哪種算法,其時間復(fù)雜度在最壞和最好都是O(nlogn)()
A.快速排序B.希爾排序C.堆排序D.選擇排序
5.已知:intx,y;doublez;則以下語句中錯誤的函數(shù)調(diào)用是()。A.A.scanf("%d,%1x,%1e",&x,&y,&z);
B.scanf("%1d*%d&1f",&x,&y,&z);
C.scanf("%x%*d%o",&x,&y);
D.scanf("%x%o%6.2f",&x,&y,&z);
6.一個隊(duì)列的入隊(duì)序列是a,b,c,d,則出隊(duì)序列是()。
A.a,b,c,dB.a,c,b,dC.d,c,b,aD.a,c,b,d
7.
8.計算機(jī)系統(tǒng)的組成是______。
A.主機(jī)、外設(shè)B.運(yùn)算器、控制器C.硬件系統(tǒng)和軟件系統(tǒng)D.CPU、內(nèi)存儲器
9.
讀取二進(jìn)制文件的函數(shù)調(diào)用形式為:fread(buffersize,count,fp);,其中buffer代表的是()。
A.一個文件指針,指向待讀取的文件
B.一個整型變量,代表待讀取的數(shù)據(jù)的字節(jié)數(shù)
C.一個內(nèi)存塊的首地址,代表讀人數(shù)據(jù)存放的地址
D.一個內(nèi)存塊的字節(jié)數(shù)
10.下列敘述中正確的是()。
A.數(shù)據(jù)庫系統(tǒng)是一個獨(dú)立的系統(tǒng),不需要操作系統(tǒng)的支持
B.數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的共享問題
C.數(shù)據(jù)庫管理系統(tǒng)就是數(shù)據(jù)庫系統(tǒng)
D.以上3種說法都不對
11.
12.以下敘述中正確的是()。
A.C語言語句必須在一行內(nèi)寫完
B.C語言程序中的每一行只能寫一條語句
C.C語言程序中的注釋必須與語句寫在同一行
D.簡單C語言語句必須以分號結(jié)束
13.函數(shù)filecopy的功能是,將fin所指文件中的內(nèi)容輸出到fout所指文件中,但函數(shù)不完整:voidfilecopy(FILE*fin,FILE*fout){charch;ch=getc(fin);while(_______){putc(ch,fout);ch=getc(fin);}}其中下劃線處應(yīng)填入的是()。A.!feof(fin)B.!feof(fout)C.feof(fin)==1D.feof(fout)==1
14.在C語言中,要求運(yùn)算數(shù)必須是整型的運(yùn)算符是()。
A./B.++C.!=D.%
15.以下不合法的用尸標(biāo)識符是()。A.A.804zhangB._hhC.yy614D.If
16.若有定義“intb[8],*p=b;”,則p+6表示()。
A.數(shù)組元素b[6]的值B.數(shù)組元素b[6]的地址C.數(shù)組元素b[7]的地址D.數(shù)組元素b[0]的值加上6
17.
18.設(shè)變量a是整型,f是實(shí)型,i是雙精度型,則表達(dá)式10+'a'+i*f值的數(shù)據(jù)類型為()。
A.intB.floatC.doubleD.不確定
19.有以下程序:#include<stdio.h>main(){charch=‘D’;while(ch>‘A’){ch--;putchar(ch);if(ch==‘A’)break;putchar(ch+1);}}程序運(yùn)行后的輸出結(jié)果是()。
A.CBB.BCAC.CCBBD.CDBCA
20.有以下結(jié)構(gòu)體說明、變量定義和賦值語句:structSTD{charname[10];intage;charsex;}s[5],*ps;ps=&s[0];則下列scanf函數(shù)調(diào)用語句有錯誤的是()。
A.scanf(“%s”,s[0].name);
B.scanf(“%d”,&s[0].age);
C.scanf(“%c”,&(ps->sex));
D.scanf(“%d”,ps->age);
二、2.填空題(20題)21.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。
22.對于一棵具有n個結(jié)點(diǎn)的樹,該樹中所有結(jié)點(diǎn)的度為【】。
23.已知字符A的ASCII代碼值為65,以下程序運(yùn)行時若從鍵盤輸入:B33<回車>,則輸出結(jié)果是【】。
#include
main()
{chara,b;
a=getchar();scanf("%d",&b);
a=a-'A'+'0';b=b*2;
printf("%c%c\n",a,b);
}
24.在面向?qū)ο蠓椒ㄖ?,類之間共享屬性和操作的機(jī)制稱為______。
25.某二叉樹中度為2的節(jié)點(diǎn)有18個,則該二叉樹中有()個葉子節(jié)點(diǎn)。
26.程序測試分為靜態(tài)分析和動態(tài)測試。其中【】是指不執(zhí)行程序,而只是對程序文本進(jìn)行檢查,通過閱讀和討論,分析和發(fā)現(xiàn)程序中的錯誤。
27.已知a為8位二進(jìn)制數(shù),要想通過ab運(yùn)算使a的低5位變反(即0變1,1變0),高3位不變,b的值應(yīng)為【】。
28.以下程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
case3:a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
29.下列程序的輸出結(jié)果是【】。
main()
{inta=1,b=2;
a=a+b;b=a-b,a=a-b;
printf("%d,%d\n",a,b);
}
30.以下程序運(yùn)行后的輸出結(jié)果是【】。
structNODE
{intk;
structNODE*link;
};
main()
{structNODEm[5],*p=m,*q=m+4;
inti=0;
while(p!=q){
p->k=++i;p++;
q->k=i++;q--;
}
q->k=i;
for(i=0;i<5;i++)printf("%d",m[i].k);
printf("\n");
}
31.下面程序執(zhí)行后輸出的結(jié)果是【】。
intm=13;
intfun(intx,inty)
{intm=3;
return(x*y-m);
}
main()
{inta=7,b=5;
printf("%d\n",fun(a,b)/m);
}
32.下面程序的功能是輸出數(shù)組s中最大元素的下標(biāo),請?zhí)羁铡?/p>
main()
{intk,p,s[]={1,-9,7,2,-10,3};
for(p=0,k=p;p<6;p++)
if(s[p]>s[k])【】
printf("%d\n",k);}
33.瀑布模型將軟件生存周期劃分為【】、開發(fā)和運(yùn)行3個階段。
34.以下程序的輸出結(jié)果是【】。
#include<stdio.h>
voidswap(int*a,int*b)
{int*t;
t=a;a=b;b=t;
}
main()
{inti=3,j=5,*p=&i,*q=&j;
swap(p,q);printf("%d%d\n",*p,*q);
}
35.在面向?qū)ο蟪绦蛟O(shè)計中,從外面看只能看到對象有外部特征,而不知道也無須知道數(shù)據(jù)的具體結(jié)構(gòu)以及實(shí)現(xiàn)操作的算法,這稱為對象的______。
36.以下程序的輸出結(jié)果是______。
main()
{intx;0;
sub(&x,8,1);
printf("%d\n",x);
}
sub(int*a,intn,intk)
{if(k<=n)sub(a,n/2,2*k);
*a+=k;
}
37.若有語句:
inti=-19,j=i%4;
printf("%d\n",j);
則輸出結(jié)果是【】。
38.以下程序輸出矩陣中值為。的元素的行下標(biāo)和列下標(biāo)。行下標(biāo)和列下標(biāo)分別放在同一下標(biāo)的r和c數(shù)組元素中。程序通過調(diào)用隨機(jī)函數(shù)給矩陣賦值。
#defineN5
#include<stdlib.h>
main()
{inta[N][N],i,j,c[N*N],r[N*N],n;
for(i=0,i<N;i++)
for(j=0;j<N;j++)a[i][j]=rand()%5;
n=gindex(【】);
printf("\n\nTheresult:\nn=%d\n",n);
for(i=0;i<n;i++)printf("%4d%4d\n",r[i],c[i]);
}
intgindex(int(*p)[N],int*c,int*r)
{inti,j,k;
【】;
for(i=0;i<N,i++)
for(j=0;j<N;j++)
if(【】==0)
{r[k]=i;c[k]=j;【】;}
return【】;
}
39.軟件測試方法中,黑盒測試法和白盒測試法是常用的方法,其中黑盒測試法主要是用于測試【】。
40.數(shù)據(jù)庫系統(tǒng)在其內(nèi)部分為三級模式,即概念模式、內(nèi)模式和外模式。其中,【】給出了數(shù)據(jù)庫物理存儲結(jié)構(gòu)和物理存取方法。
三、1.選擇題(20題)41.下列敘述中,不屬于測試的特征的是
A.測試的挑剔性B.完全測試的不可能性C.測試的可靠性D.測試的經(jīng)濟(jì)性
42.在數(shù)據(jù)庫設(shè)計中,將E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型的過程屬于()A.需求分析階段B.邏輯設(shè)計階段C.概念設(shè)計階段D.物理設(shè)計階段
43.下列程序執(zhí)行的輸出結(jié)果是()。#include<stdio.h>main(){chara[2][4];strcpy(a,"are");strcpy(a[1],"you");a[0][3]='&';printf("%s\n",a);}
A.are&youB.youC.areD.&
44.有如下程序main(){chars[]="ABCD",*p;for(p=s+1;p<s+4;p++)printf("%s\n",p);}該程序的輸出結(jié)果是
A.ABCDBCDCDDB.ABCDC.BCDD.BCDCDD
45.有以下程序:main(){inti,s=0;for(i=1;i<10;i+=2)s+=i+1;ptintf("%d\n",s);}程序執(zhí)行后的輸出結(jié)果是()。
A.自然數(shù)1~9的累加和B.自然數(shù)1~10的累加和C.自然數(shù)1~9中奇數(shù)之和D.自然數(shù)1~10中偶數(shù)之和
46.有以下程序:int*f(int*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);}程序運(yùn)行后輸出結(jié)果是______。
A.7,8,8B.7,8,7C.8,7,7D.8,7,8
47.以下正確的實(shí)型常量是()
A.1.2EB.0.579899C.1.2e0.6D.8
48.以下敘述中正確的是()
A.在函數(shù)中必須要有return語句
B.在函數(shù)中可以有多個return語句,但只執(zhí)行其中的一個
C.return語句中必須要有一個表達(dá)式
D.函數(shù)值并不總是通過return語句傳回調(diào)用處
49.執(zhí)行x=5>1+2&&2||2*4<4-!0后,x的值為______。
A.-1B.0C.1D.5
50.若定義:inta=511,*b=&a;則printf(“%d\n”,*B);的輸出結(jié)果為
A.無確定值B.a的地址C.512D.511
51.設(shè)有以下語句:structst{intn;structst*next;};staticstructsta[3]={5,&a[1],7,&a[2],9,'\0'},*p;p=&a[0];則表達(dá)式的值是6的為______。
A.p++->nB.p->n++C.(*p).n++D.++p->n
52.下列字符數(shù)組初始化語句中,不正確的是()。
A.charc[]='goodmoming';
B.charc[20]="goodmorning";
C.charc[]={'a','b','c','d'};
D.charc[]={"goodmoming"};
53.有以下程序:main(){intk=5,n=0;do{switch(k){case1:case3:n+=1;k--;break;default:n=0;k--;case2:case4:n+=2;k--;break;}printf("%d",n);}while(k>0&&n<5);}程序運(yùn)行后的輸出結(jié)果是()。
A.235B.235C.2356D.2356
54.以下程序(程序左邊的數(shù)字為附加的行號)______。1#include<str.h>2#include<stdio.h>3main()4{chars[]="string";5puts(s);6strcpy(s,"hello");7printf("%3s\n",s);}
A.沒有錯B.第1行有錯C.第6行有錯D.第7行有錯
55.已有定義:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判斷c中的字符是否為大寫字母的表達(dá)式是
A.isupper?
B.′A′<=c<=′Z′
C.′A′<=c&&c<=′Z′
D.c<=(′z′-32)&&(′a′-32)<=c
56.有以下程序#inclUde<stdio.h>voidfun(int*s,intn1,intn2){inti,j,t;i=n1;j=n2;while(i<j){t=s[i];s[i]=s[j];s[j]=t;i++;j--;}}main(){inta[10]={1,2,3,4,5,6,7,8,9,0},k;fun(a,0,3);fun(a,4
A.0987654321B.4321098765C.5678901234D.0987651234
57.有以下程序:main(){inta=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n",d);elseif((c-1>=d)==1)printf("%d\n",d+1);elseprintf("%d\n",d+2);}執(zhí)行后輸出結(jié)果是______。
A.2B.3C.4D.編譯時有錯,無結(jié)果
58.設(shè)有下列說明語句:strcutstr{intx;floaty;charz;}st;則下列的敘述中不正確的是()。
A.struct是結(jié)構(gòu)體類型的關(guān)鍵字
B.st是結(jié)構(gòu)體類型名
C.x、y、x都是結(jié)構(gòu)體成員名
D.structstr是結(jié)構(gòu)體類型名
59.在下列語句中,其含義為“q為一個指針的函數(shù),該指針指向整型數(shù)據(jù)”的定義語句是()。
A.int**q;B.int(*q)();C.int*q;D.int*q();
60.下列描述中正確的是()。
A.軟件工程只是解決軟件項(xiàng)目的管理問題
B.軟件工程主要解決軟件產(chǎn)品的生產(chǎn)率問題
C.軟件工程的主要思想是強(qiáng)調(diào)在軟件開發(fā)過程中需要應(yīng)用工程化原則
D.軟件工程只是解決軟件開發(fā)中的技術(shù)問題
四、選擇題(20題)61.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.0B.10C.20D.出錯
62.
63.
64.以下關(guān)于C語言的敘述中正確的是()。
A.C語言中的注釋不可以夾在變量名或關(guān)鍵字的中間
B.C語言中的變量可以在使用之前的任何位置進(jìn)行定義
C.在C語言算術(shù)表達(dá)式的書寫中,運(yùn)算符兩側(cè)的運(yùn)算數(shù)類型必須一致
D.C語言的數(shù)值常量中夾帶空格不影響常量值的正確表示
65.設(shè)循環(huán)隊(duì)列的存儲空間為Q(1:35),初始狀態(tài)為front=rear=35?,F(xiàn)經(jīng)過一系列入隊(duì)與退隊(duì)運(yùn)算后,front=15,rear=15,則循環(huán)隊(duì)列中的元素個數(shù)為()。
A.20B.0或35C.15D.16
66.以下程序執(zhí)行后的輸出結(jié)果是()。
A.5,5
B.5,11
C.11,11
D.11,5
67.
68.層次型、網(wǎng)狀型和關(guān)系型數(shù)據(jù)庫的劃分原則是()
A.數(shù)據(jù)之間的聯(lián)系方式B.記錄長度C.聯(lián)系的復(fù)雜程度D.文件的大小
69.有以下程序
main()
{
inta[3][2]={0},(*ptr)[2],i,j;
for(i=0;i<2;i++)
{
ptr=a+i;
scanf("%d",ptr);
ptr++;
}
for(i=0;i<3;i++)
{
for(j=0;j<2;j++)
printf("%2d",a[i][j]);
printf("\n");
}
}
若運(yùn)行時輸入:123<回車>,則輸出結(jié)果是
70.有以下程序程序運(yùn)行后的輸出結(jié)果是()。
A.8B.4C.6D.2
71.現(xiàn)有如下程序段:
則程序段的輸出結(jié)果為()。
A.7,8
B.8,8
C.7,10
D.8,10
72.有三個關(guān)系R,S和T如下:
其中關(guān)系T由關(guān)系R和s通過某種操作得到,該操作為()。
A.選擇B.交C.投影D.并
73.if語句基本形式是:if(表達(dá)式)語句,以下關(guān)于“表達(dá)式”值的敘述中正確的是()。
A.必須是邏輯值B.必須是整數(shù)值C.必須是正數(shù)D.可以是任意合法的數(shù)值
74.
75.
76.以下程序的輸出結(jié)果是()。main{inta=3:printf("%d\n",(a+a-=a*a));}A.-6B.12C.0D.-12
77.
78.設(shè)有程序段:intk=12:while(k=1)k=k一1;則下列描述中正確的是()。A.while循環(huán)執(zhí)行10次B.循環(huán)是無限循環(huán)C.循環(huán)體語句一次也不執(zhí)行D.循環(huán)體語句執(zhí)行一次
79.以下關(guān)于指針概念不正確的是()。
A.指針變量可以用整數(shù)賦值,但不可以用浮點(diǎn)數(shù)賦值
B.一個變量的地址稱為該變量的指針,一個指針變量只能指向同一類型的變量
C.只有同一類型的變量地址才能放到指向該類型變量的指針變量之中
D.只能將地址賦給指針變量
80.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.61B.70C.63D.71
五、程序改錯題(1題)81.下列給定程序中,函數(shù)fun()的功能是:將P所指字符串中的所有字符復(fù)制到b中,要求在每復(fù)制3個字符之后插入1個空格。
例如,若給a輸入字符串:“ABCDEFGHIJK”,調(diào)用函數(shù)后,字符數(shù)組b中的內(nèi)容為:“ABCDEFGHIJK”。
請改正程序中的錯誤,使它能得出正確結(jié)果。
注意:不要改動main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計題(1題)82.某學(xué)生的記錄由學(xué)號、8門課程成績和平均分組成,學(xué)號和8門課程的成績已在主函數(shù)中給出,請編寫函數(shù)fun,其功能是:求出該學(xué)生的平均分,并放人記錄的ave成員中。
例如,學(xué)生的成績是:85.5,76,69.5,85,91,72,64.5,87.5,則他的平均分應(yīng)為78.875。注意:部分源程序在文件PROGl.C中。
請勿改動主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun部位中填入你編寫的若干語句。
參考答案
1.A棧是限定只在一端進(jìn)行插入與刪除的線性表,按照“先進(jìn)后出”或“后進(jìn)先出”的原則組織數(shù)據(jù)。棧頂元素總是最后被插入的元素,從而也是最先能被刪除的元素;棧底元素總是最先被插入的元素,從而也是最后才能被刪除的元素。
2.A此題考查a--和--a之間的區(qū)別,當(dāng)while(a--)為真循環(huán)執(zhí)行,a--是執(zhí)行再減1,所以答案選擇A。
3.B
4.C
5.BB項(xiàng)的格式應(yīng)該為scanf("%1d*%d%1f",&x,&y,&z);
6.A
7.B
8.C
9.Cfread函數(shù)中的參數(shù)buffer是內(nèi)存塊的首地址,輸入的數(shù)據(jù)存入此內(nèi)存塊中。
10.B解析:數(shù)據(jù)庫系統(tǒng)除了數(shù)據(jù)庫管理軟件之外,還必須有其他相關(guān)軟件的支持。這些軟件包括操作系統(tǒng)、編譯系統(tǒng)、應(yīng)用軟件開發(fā)工具等,選項(xiàng)A的說法是錯誤的。數(shù)據(jù)庫具有為各種用戶所共享的特點(diǎn),選項(xiàng)B的說法是正確的。通常將引入數(shù)據(jù)庫技術(shù)的計算機(jī)系統(tǒng)稱為數(shù)據(jù)庫系統(tǒng)。一個數(shù)據(jù)庫系統(tǒng)通常由5個部分組成,包括相關(guān)計算機(jī)的硬件、數(shù)據(jù)庫集合、數(shù)據(jù)庫管理系統(tǒng)、相關(guān)軟件和人員。因此,選項(xiàng)C的說法是錯誤的。
11.B
12.DC語句可以跨行來寫,但是必須以分號結(jié)束,所以A選項(xiàng)錯誤。C語言程序中的一行可以有多條語句,所以B選項(xiàng)錯誤。C語言中的注釋語句可以與原語句放在一行,也可以不放在一行,所以C選項(xiàng)錯誤。故本題答案為D選項(xiàng)。
13.Afilecopy函數(shù)每次從fin文件指針調(diào)用getc函數(shù)讀取一個字符存放到ch中,再通過while循環(huán)調(diào)用putc函數(shù)將ch寫入fout,直到fin指向文件尾部為止。所以while的循環(huán)條件是判斷fin是否到文件尾部。這里使用feof函數(shù)判斷:feof返回值為真時,表示fin指向了文件尾部,否則表示fin未到文件尾部。所以while循環(huán)條件為!feof(fin)。故本題答案為A選項(xiàng)。
14.D解析:/、++和!=的操作數(shù)既可能是整型,又可能是實(shí)型。而%的操作數(shù)只能是整型。
15.AC語言規(guī)定,標(biāo)識符是由字母、數(shù)字或下劃線組成,并且它的第一個字符必須是字母或下劃線。
16.B指針中存放的是變量的地址,指針也可以進(jìn)行增減運(yùn)算,這時指針移動的最小單位是一個存儲單元,而不是一個字節(jié)。所以題中“P+6”指的是將指針向后移動了6個存儲單元,即指向uE63,存放的是b[6]的地址。
17.A
18.C
19.Dputchar函數(shù)的功能是輸出一個字符,由whlie判斷條件和ch初始值可知,只要“ch≠‘A’”,執(zhí)行兩次putchar函數(shù),否則跳出循環(huán)。第1次輸出“CD”,第2次輸出“BC”,第3次輸出“A”后跳出循環(huán)。故本題答案為D選項(xiàng)。
20.D題目中需要輸入一個變量,scanf要求輸入?yún)?shù)為指針,而D選項(xiàng)中“ps->age”為變量,不是指針。故本題答案為D選項(xiàng)。
21.軟件開發(fā)
22.n-1n-1解析:設(shè)該樹中所有結(jié)點(diǎn)的度為x,因?yàn)?,在樹的結(jié)點(diǎn)中,除了根結(jié)點(diǎn)以外,其余結(jié)點(diǎn)都有一個分支進(jìn)入,所以,n=x+1,所以x=n-1。
23.1B1B解析:從鍵盤輸入后,有a=B,b=33。a=a-'A'+'0'='B'-'A'+'0'='1',b=b*2=66,在輸出時均需要把a(bǔ),b轉(zhuǎn)化為字符型,因此輸出為1B。
24.繼承繼承
25.19
26.靜態(tài)分析靜態(tài)分析解析:程序測試分為靜態(tài)分析和動態(tài)測試。其中,靜態(tài)分析是指不執(zhí)行程序,而只是對程序文本進(jìn)行檢查,通過閱讀和討論,分析和發(fā)現(xiàn)程序中的錯誤。
27.1F1F解析:11=0,01=1,實(shí)現(xiàn)了按位的求反。
28.a=2b=1a=2,b=1解析:本題考查了switch結(jié)構(gòu)的內(nèi)容。C語言中,程序執(zhí)行完一個case標(biāo)號的內(nèi)容后,如果沒有break語句,控制結(jié)構(gòu)會轉(zhuǎn)移到下一個case繼續(xù)執(zhí)行,因?yàn)閏ase常量表達(dá)式只是起語句標(biāo)號作用,并不是在該處進(jìn)行條件判斷。本題程序在執(zhí)行完內(nèi)部switch結(jié)構(gòu)后,繼續(xù)執(zhí)行了外部switch結(jié)構(gòu)的case2:分支,最后a和b的值分別為2和1。
29.21
30.1343113431解析:初始化時,指針p指向m[0]的地址,指針q指向m[4]的地址,p!=q滿足循環(huán)條件,執(zhí)行循環(huán)語句,得到m[0].k=1,m[4].k=1,此時i=2,指針p指向m[1]的地址,指針q指向m[3]的地址,p!=q滿足循環(huán)條件,執(zhí)行循環(huán)語句,得到m[1].k=3,k=3,此時i=4,指針q指向m[2]的地址,p==q不滿足循環(huán)條件,則退出循環(huán),m[2].k=4。所以最后輸出為13431。
31.22解析:本題變量m既是外部變量(值是13),又是fun函數(shù)的局部變量(值為3)。函數(shù)fun(x*y-m)的值為7*5-3=32,在main函數(shù)中,fun(a,b)/m中的m應(yīng)取外部變量的值13,因此輸出2。
32.k=p;k=p;解析:為要尋找數(shù)組中的最大元素的下標(biāo),需先預(yù)設(shè)1個臨時最大元素的下標(biāo),并順序逐一考查數(shù)組的元素,當(dāng)發(fā)現(xiàn)當(dāng)前元素比臨時最大元素更大時,就用當(dāng)前元素的下標(biāo)更新臨時最大元素下標(biāo)。直至考查了數(shù)組的全部元素后,這臨時最大元素下標(biāo)就是數(shù)組的最大元素下標(biāo)。通常預(yù)設(shè)的最大元素下標(biāo)是數(shù)組的首元素下標(biāo),考查是從首元素開始順序向后繼元素考查。程序中,存儲臨時最大元素下標(biāo)的變量是k,變量p控制順序考查的循環(huán)控制變量。當(dāng)發(fā)現(xiàn)當(dāng)前元素s[p]比臨時最大元素s[k)更大時,應(yīng)該用p更新k。所以在空框處應(yīng)填入代碼“k=p;”。
33.計劃計劃解析:瀑布模型是B.W.Boehm于1976年提出的。它將軟件生存周期劃分為計劃、開發(fā)、運(yùn)行3個時期,每個時期又分為若干個階段。
34.3535解析:考查swap()函數(shù)。函數(shù)swap(int*a,int*b)的功能是實(shí)現(xiàn)*a和*b中兩個數(shù)據(jù)的交換,在主函數(shù)中調(diào)用swap(p,q)后,參形指針變量a和b分別指向i和j,在swap(int*a,int*b)執(zhí)行完后,指針變量a和b分別指向j和i,而指針變量p,q所指向變量的值沒有發(fā)生變化,所以輸出結(jié)果為35。
35.封裝性封裝性解析:對象具有下列5個基本特點(diǎn):①標(biāo)識惟一性;②分類性:③多態(tài)性;④封裝性;⑤模塊獨(dú)立性好。其中,封裝性是指從外面看只能看到對象的外部特征,對象的內(nèi)部特征即處理能力的實(shí)行和內(nèi)部狀態(tài),對外是不可見的,對象的內(nèi)部狀態(tài)只能由其自身改變。
36.77解析:在主函數(shù)中定義了一個變量x并賦初值0,然后執(zhí)行函數(shù)調(diào)用語句,該語句的執(zhí)行過程為sub(&x,8,1)調(diào)用sub(&a,4,2),sub(&s,4,2)調(diào)用sub(&a,2,4),sub(&a,2,4)中由于2<4,所以if后面括號里的判斷為假,遞歸結(jié)束,執(zhí)行其后的。*a+=k;語句此時x=x+k=0+4+4,回推到上一層調(diào)用函數(shù)sub(Rx,4,2)中,執(zhí)行后面的語句,x=x+k=4+2=6,在回推到最上一層調(diào)用函數(shù)sub(&x,8,1)執(zhí)行后面的語句,x=x+k=6+1=7,所以最后輸出7。
37.-3-3解析:%運(yùn)算符是求兩個數(shù)相除的余數(shù),其結(jié)果與被除數(shù)的符號一致,本題中“-19%4”的值為“-3”。
38.acrk=0p[i][j]k++k
39.軟件外部功能軟件外部功能
40.內(nèi)模式內(nèi)模式解析:內(nèi)模式又稱為物理模式,它給出了數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法。
41.C解析:軟件測試的目標(biāo)是在精心控制的環(huán)境下執(zhí)行程序,以發(fā)現(xiàn)程序中的錯誤,給出程序可靠性的鑒定。它有3個方面的重要特征,即測試的挑剔性、完全測試的不可能性及測試的經(jīng)濟(jì)性。其中沒有測試的可靠性這一說法。注意:軟件測試與軟件調(diào)試的概念,以及相應(yīng)的方法。
42.B數(shù)據(jù)庫應(yīng)用系統(tǒng)的邏輯設(shè)計包括數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計、數(shù)據(jù)庫事務(wù)概要設(shè)計和應(yīng)用程序概要設(shè)計三方面。數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計的主要步驟為:將E—R圖轉(zhuǎn)換為初始關(guān)系模式,對初始關(guān)系模式進(jìn)行優(yōu)化,檢查關(guān)系表對數(shù)據(jù)庫事務(wù)的支持性,確定關(guān)系模式完整性約束,設(shè)計基于關(guān)系模式的用戶視圖。
43.A解析:strcpy(a,'are')中數(shù)組名a代表數(shù)組首地址的地址常量,該操作把a(bǔ)re復(fù)制到a中,a[0][3]=\'&\',且strcpy(a[1],'you')把you復(fù)制到a[1]中,故輸出a為“are&you”。
44.D解析:本題考查指向字符串的指針的運(yùn)算方法。指針變量p首先指向字符串中的第一個字符A,執(zhí)行p=s+1后,p指向字符串中的第二個字符B,然后輸出值'BCD'并換行。依次執(zhí)行循環(huán)語句。
45.D解析:本題中,i賦初值為1,并對其每次進(jìn)行加2操作,即i每次均為1~10之間的奇數(shù),s+=i+1,即s=s+i+1,相當(dāng)于s等于原來的s每次加上1~10之間的偶數(shù),直到i<lO不成立;當(dāng)i=1時,s=0+1+1=2;當(dāng)i=3時,s=2+3+1=2+4;當(dāng)i=5時,s=2+4+5+1=2+4+6;當(dāng)i=7時,s=2+4+6+7+1=2+4+6+8;當(dāng)i=9時,s=2+4+6+8+9+1=2+4+6+8+10;當(dāng)i=11時,i<10不成立,結(jié)束循環(huán)。所以,4個選項(xiàng)中選項(xiàng)D符合題意。
46.B解析:f函數(shù)的功能是返回地址為x,y的兩個數(shù)中值鉸的數(shù)的地址,本題輸出結(jié)果是7,8,7。
47.B
48.B
49.C
50.D解析:本題考核的知識點(diǎn)是printf()函數(shù)的輸出格式.本題中先定義了一個int型的變量a并賦初值為511,接著定義了一個指向a的指針變量b,在printf()函數(shù)的輸出格式中,是輸出*b,即輸出指針?biāo)赶蜃兞縜的值為511,因此輸出511。所以,4個選項(xiàng)中D為所選。
51.D解析:本題主要考查結(jié)構(gòu)體變量的定義和應(yīng)用,以及運(yùn)算符的優(yōu)先級。
52.A解析:本題考查兩個概念:①用單引號括起來的一個字符常量只能存放一個字符;②C語言中沒有字符串變量,只能用字符數(shù)組來存儲字符串。
選項(xiàng)A)中一個單引號內(nèi)放了若干個字符是錯誤的:選項(xiàng)B)和選項(xiàng)D)選項(xiàng)中將一個字符串賦值給一個字符數(shù)組是允許的。
53.A解析:do-while語句的特點(diǎn)是先執(zhí)行循環(huán)體,然后再判斷循環(huán)條件是否成立,當(dāng)循環(huán)條件的值為0時循環(huán)結(jié)束。本題中執(zhí)行switch語句,尋找與5匹配的case5分支,沒有尋找到則執(zhí)行default后的語句,n=0,k的值變?yōu)?,繼續(xù)執(zhí)行switch語句,尋找與4匹配的case4分支,找到后開始執(zhí)行其后的語句“n+=2;k--;”,n的值為2,k的值變?yōu)?,遇到break語句跳出該switch語句體。執(zhí)行print語句輸出2;此時n=2,k=3依舊滿足do-while循環(huán)條件,將用同樣的方式再次執(zhí)行switch語句,直到n=5時不再滿足do-while循環(huán)條件退出所有的循環(huán)。
54.B解析:字符串復(fù)制函數(shù)strcpy包含在頭文件string.h中,因此,程序中的第1行文件包含命令是錯誤的。
55.B解析:在本題中,選項(xiàng)B)實(shí)際是先計算關(guān)系表達(dá)式'\'A\'<=c'的值是0還是1,再比較該值與字符\'Z\'之間的大小關(guān)系,顯然不能實(shí)現(xiàn)題目所要求的功能,而選項(xiàng)A)、C)、D)都可以。
56.C解析:函數(shù)fun(int*s,intn1,intn2)的功能是對數(shù)組s中的元素進(jìn)行首尾互相調(diào)換。所以在主函數(shù)中,當(dāng)fun(a,0,3)執(zhí)行完后,數(shù)組a[12]={4,3,2,1,5,6,7,8,9,0};再執(zhí)行fun(a,4,9),數(shù)組a[12]={4,3,2,1,0,9,8,7,6,5};再執(zhí)行fun(a,0,9)后,數(shù)組a[12]={5,6,7,8,9,0,1,2,3,4}。
57.B解析:C語言規(guī)定else總是和離它最近的if語句配對。故第一個else和第一個if配對,第二個else和第二個if配對。首先計算第一個if后面的表達(dá)式“a>b>c”,表達(dá)式“a>b”是為1,表達(dá)式“1>c”為0,所以執(zhí)行else后面的語句。先執(zhí)行if后面的表達(dá)式,“c-1>d”為真,值為1?!?==1”為真,執(zhí)行printf語句。
58.B解析:本題主要考查結(jié)構(gòu)類型的定義:struct是結(jié)構(gòu)體類型的關(guān)鍵字:structstr是結(jié)構(gòu)體類型名;x、y、z都是結(jié)構(gòu)體成員名:st是結(jié)構(gòu)變量名。
59.B解析:本題考查的是指針函數(shù)。指針函數(shù)定義的基本格式為:類型說明符(*函數(shù)名)()。其中,類型說明符表示返回的指針值指向的數(shù)據(jù)類型。
60.C\r\n軟件工程是試圖用工程、科學(xué)和數(shù)學(xué)的原理與方法研制、維護(hù)計算機(jī)軟件的有關(guān)技術(shù)及管理方法。軟件工程的主要思想是強(qiáng)調(diào)在軟件開發(fā)工程中需要應(yīng)用工程化的原則。軟件工程用來解決以下問題:軟件需求的增長得不到滿足、軟件開發(fā)成本和進(jìn)度無法控制、軟件質(zhì)量難以保證、軟件不可維護(hù)或維護(hù)程度低、軟件得成本不斷提高、軟件開發(fā)生產(chǎn)率的提高趕不上硬件的發(fā)展和應(yīng)用需求的增長。軟件項(xiàng)目的管理、軟件產(chǎn)品的生產(chǎn)率、軟件開發(fā)中的技術(shù)都是軟件工程需要解決的部分問題。因此選項(xiàng)C正確。
61.CnlaIloc(sizeof(int))的作用是開辟一個長度為sizeof(int)存儲空間,并通過強(qiáng)制類型轉(zhuǎn)換(int。)將此存儲空間的地址賦給了一個整型的指針變量P。然后執(zhí)行語句·P=n,使得·p的值為10,并通過return返回此值,即a的值為l0。然后在主函數(shù)中輸出a+ftm(10)=10+10=20。
62.A
63.A
64.B解析:C語言中注釋可以放在任何位置,選項(xiàng)A錯誤;C語言中的變量只要在使用之前定義即可,位置可以是使用前的任何位置,故選項(xiàng)B正確;C語言中兩側(cè)數(shù)
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 逆天作文題目及答案
- 輸煤系統(tǒng)生產(chǎn)工作聯(lián)系制度
- 數(shù)據(jù)挖掘算法簡明指南
- 超市配送員排班制度
- 血透室專科呼叫醫(yī)生標(biāo)準(zhǔn)制度
- 2025年山東事業(yè)單位備考考試及答案
- 2025年臺州市人才發(fā)展集團(tuán)筆試及答案
- 2025年助理會計師筆試及答案
- 2025年用友財務(wù)信息化專員筆試及答案
- 2025年亳州市醫(yī)療事業(yè)單位考試及答案
- 安徽省阜陽市2026屆高三上學(xué)期1月期末教學(xué)質(zhì)量監(jiān)測英語試卷(含答案無聽力音頻有聽力原文)
- 2026年商洛市兒童福利院招聘備考題庫(6人)附答案詳解
- 2025年湖北能源集團(tuán)股份有限公司招聘筆試真題
- ARK+Invest+年度旗艦報告《Big+Ideas+2026》重磅發(fā)布
- 2026山西臨汾市大寧縣招聘第四次全國農(nóng)業(yè)普查辦公室人員8人備考題庫及一套完整答案詳解
- 臍靜脈置管課件
- 2025年總經(jīng)理安全生產(chǎn)責(zé)任書
- 殘疾人職業(yè)技能培訓(xùn)方案
- 液化天然氣氣化站安全檢查表
- 2023年白銀有色集團(tuán)招聘筆試題庫及答案解析
- GB/T 32022-2015貴金屬覆蓋層飾品
評論
0/150
提交評論