版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(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.if語(yǔ)句基本形式是:if(表達(dá)式)語(yǔ)句,以下關(guān)于“表達(dá)式”值的敘述中正確的是()。
A.必須是邏輯值B.必須是整數(shù)值C.必須是正數(shù)D.可以是任意合法的數(shù)值
2.下列關(guān)于邏輯運(yùn)算符兩側(cè)運(yùn)算對(duì)象的敘述中正確的是()。
A.只能是整數(shù)0或1B.只能是整數(shù)0或非0整數(shù)C.可以是結(jié)構(gòu)體類(lèi)型的數(shù)據(jù)D.可以是任意合法的表達(dá)式
3.c源程序中不能表示的數(shù)制是()。
A.二進(jìn)制B.八進(jìn)制C.十進(jìn)制D.十六進(jìn)制
4.下列關(guān)于棧敘述正確的是A.棧頂元素最先能被刪除B.棧頂元素最后才能被刪除C.棧底元素永遠(yuǎn)不能被刪除D.以上三種說(shuō)法都不對(duì)
5.
6.有以下程序:#include<stdio.h>voidfunc(intn){staticintnum=1);num=num+n;printf("%d",num);}main(){funo(3);func(4);printf("n");}程序運(yùn)行后的輸出結(jié)果是()。A.48B.34C.35D.45
7.若有運(yùn)算符:>、*=、<<、%、sizeof,則它們按優(yōu)先級(jí)(由低至高)的正確排列次序?yàn)?)。
A.*=<<>%sizeof
B.<<*=>%sizeof
C.%=><<sizeof%
D.*=><<%sizeof
8.下列關(guān)于信息系統(tǒng)的敘述中,錯(cuò)誤的是()。
A.廣播電視是一種雙向的、點(diǎn)到多點(diǎn)的信息交互系自
B.網(wǎng)絡(luò)聊天是一種雙向的,以信息交互為主要目的系統(tǒng)
C.電話(huà)是一種雙向的、點(diǎn)對(duì)點(diǎn)的、以信息交互為主要的的系統(tǒng)
D.雷達(dá)是一種以感測(cè)和識(shí)別為主要目的的系統(tǒng)
9.有以下程序:#include<stdi0.h>#defineS(x)(x)"x"2main(){intk一5,j=2;Drintf("%printf,",S(k+j));printf("%printf\n",S((k—j)));}程序運(yùn)行后的輸出結(jié)果是()。A.98,18B.39,11C.39,18D.98,11
10.在下列幾種排序方法中,要求內(nèi)存量最大的是______。
A.插入排序B.選擇排序C.快速排序D.歸并排序
11.有以下程序:#include<stdio.h>doublef(doublex);main(){doublea=0;inti;for(i=0;i<30;i+=10)a+=f((double)i);printf("%5.of\n",a);}doublef(doublex){returnx*x+1;}程序運(yùn)行后的輸出結(jié)果是()。A.503B.401C.500D.1404
12.若某線(xiàn)性表最常用的操作是存取任一指定序號(hào)的元素和在最后進(jìn)行插入和刪除運(yùn)算,則利用()存儲(chǔ)方式最節(jié)省時(shí)間。
A.順序表B.雙鏈表C.帶頭結(jié)點(diǎn)的雙循環(huán)鏈表D.單循環(huán)鏈表
13.設(shè)有函數(shù)說(shuō)明語(yǔ)句:intfun(int,int);以及函數(shù)指針定義語(yǔ)句:int(*f)(int,int);若要使函數(shù)指針指向函數(shù)fun的入口地址,以下選項(xiàng)中正確的是()。
A.f=fun();B.*f=fun;C.f=fun;D.*f=fun();
14.關(guān)于地址和指針,以下敘述正確的是()。
A.可以通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換讓char型指針指向double型變量
B.函數(shù)指針P指向一個(gè)同類(lèi)型的函數(shù)f時(shí),必須寫(xiě)成“p=&f;”
C.指針P指向一個(gè)數(shù)組f時(shí),必須寫(xiě)成“P=&f;”
D.—個(gè)指針變量P可以指向自身
15.以下程序的輸出結(jié)果是()。main{charw[][10]={"ABCD","EFGH","IJKL","MNOP"),K;for(k=1;k<3;k++)printf("%s\n",w[k]);A.ABCDFGHKLB.ABCDEFGUC.EFGJKOD.EFGHUKL
16.有下列程序:main(){char*P[]={"3697","2584");inti,j;longnum=0;for(i=0;i<2;i++){j=0;while(p[i][j]!=\0){if((p[i][j]-t\0)%2)num=10*num+p[j][j]-0;j+=2;}}printf("%d\n",num);}程序執(zhí)行后的輸出結(jié)果是()。A.35B.37C.39D.3975
17.已定義c為字符型變量,則下列語(yǔ)句中正確的是()。
A.c='97'B.c="97"C.c=97D.c="a"
18.若變量c為char類(lèi)型,能正確判斷出c為小寫(xiě)字母的表達(dá)式是_______。A.′a′<=c<=′z′
B.(c>=′a′)||(c<=′z′)
C.(′a′=C)
D.(c>=′a′)&&(c<=′z′)
19.有以下程序#include<stdio.h>main(){char*s=(“ABC);do{printf(“%d”,*s%10);s++;}while(*s);}注意,字母A的ASCII碼值為65。程序運(yùn)行后的輸出結(jié)果是A.5670B.656667C.567D.ABC
20.有以下程序:#include<stdio.h>structtt{intx;structtt*y;}*p;structtta[4]={20,a+1,15,a+2,30,a+3,17,a};main(){inti;p=a;for(i=1;i<=2;i++){printf(“%d,”,p->x);p=p->y;}}程序的運(yùn)行結(jié)果是()。
A.20,30,B.30,17,C.15,30,D.20,15,
二、2.填空題(20題)21.若輸入21、23、34、11、2、6,則以下程序的運(yùn)行結(jié)果【】。
main()
{inti;
char+p,num[6];
for(i=0;i<5;i++)
scanf("%d,",&num[i]);
scanf("%d",&num[5]);
p=&num[0];
sort(p,6);
for(i=0;i<5;i++)printf("%d,",num[i]);
printf("%d\n",num[5]);
}
sort(p,m)
char*p;
intm;
{inti;
charchange,*p1,*p2;
for(i=0;i<m/2;i++)
{p1=p+i;
p2=p+(m-1-i);
change=*p1;
*p1=*p2;
*p2=change;
}
}
22.設(shè)a、b、c為整形數(shù),且a=2,b=3,c=4則執(zhí)行完以下語(yǔ)句后,a的值是【】。
a*=16+(b++)-(++c);
23.軟件維護(hù)活動(dòng)包括以下幾類(lèi):改正性維護(hù)、適應(yīng)性維護(hù)、【】維護(hù)和預(yù)防性維護(hù)。
24.Jackson方法是一種面向【】的結(jié)構(gòu)化方法。
25.用復(fù)合的賦值運(yùn)算符將變量x中的值增大2的賦值表達(dá)式是【】。
26.在關(guān)系數(shù)據(jù)庫(kù)中把數(shù)據(jù)表示成二維表,每一個(gè)二維表稱(chēng)為【】。
27.性結(jié)構(gòu)中,隊(duì)列的操作順序是先進(jìn)先出,而棧的操作順序是______。
28.按照邏輯結(jié)構(gòu)分類(lèi),數(shù)據(jù)結(jié)構(gòu)可分為線(xiàn)性結(jié)構(gòu)和非線(xiàn)性結(jié)構(gòu),二叉樹(shù)屬于______。
29.若有定義doublea[5];,則a數(shù)組元素下標(biāo)的上限為_(kāi)_____。
30.在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,類(lèi)描述的是具有相似性質(zhì)的一組【】。
31.下列程序的運(yùn)行結(jié)果是______。
#include<stdio.h>
main()
{inta,b,c,n;
a=2;b=0;c=1;n=1;
while(n<=3)
{c=c*a;b=b+c;++n;}
printf("b=%d",B);
}
32.結(jié)構(gòu)化分析方法是面向______進(jìn)行分析的方法。
33.要求使下列程序輸出5個(gè)整數(shù),請(qǐng)?zhí)羁铡?/p>
for(i=0;i<=______;printf("%d\n",i+=2));
34.以下程序的功能是根據(jù)輸入的"y"("Y")與"n"("N"),在屏幕上分別顯示出"ThisisYES."與"ThisisNO."??瞻滋幮枰钊氲膬?nèi)容是
#include<stdio.h>
voidYesNo(charch)
{switch(ch)
{case′y′:
case′Y′:printf("\nThisisYES.\n");
case′n′:
case′N(xiāo)′:printf("\nThisisNO.\n");}
main()
{charch;
printf("\nEnterachary,Yorn,N:");
ch=【】;
printf("ch;%c",ch);
YesNo(ch);}
35.以下程序用來(lái)輸出結(jié)構(gòu)體變量ex所占存儲(chǔ)單元的字節(jié)數(shù),請(qǐng)?zhí)羁铡?/p>
structst
{charname[20];doublescore;};
main()
{structstex;
printf("exsize:%d\n",sizeof(【】));}
36.隊(duì)列是限定在表的一端進(jìn)行插入和在另一端進(jìn)行刪除操作的線(xiàn)性表。允許插入的一端稱(chēng)作______。
37.設(shè)有以下定義和語(yǔ)句:
inta[3][2]={1,2,3,4,5},*p[3];
p[0]=a[1];
則*(p[0]+1)所代表的數(shù)組元素是【】。
38.設(shè)x、y、z為整型變量,且x=2,y=3,z=4,當(dāng)執(zhí)行以下語(yǔ)句后,x的值是______。
x*=(y++)+(--z);
39.下面程序用來(lái)輸出結(jié)構(gòu)體變量a所占存儲(chǔ)單元的字節(jié)數(shù),請(qǐng)?zhí)羁铡?/p>
main()
{structstu
{charx[20];floaty;}a;
printf("asize:%d\n",sizeof(【】));
}
40.設(shè)有下列宏定義:#defineA2
#defineBA+3
則執(zhí)行賦值語(yǔ)句;t=B*2;t為int型變量后的值是______。
三、1.選擇題(20題)41.下列描述中不正確的是()。
A.字符型數(shù)組中可以存放字符串
B.可以對(duì)字符型數(shù)組進(jìn)行整體輸入、輸出
C.可以對(duì)整型數(shù)組進(jìn)行整體輸入、輸出
D.不能在賦值語(yǔ)句中通過(guò)賦值運(yùn)算符“=”對(duì)字符型數(shù)組進(jìn)行整體賦值
42.下列程序的運(yùn)行結(jié)果為()
#include<stdio.h>
main()
{structdate
{intyear,month,day;
)today;
printf("%d\n",sizeof(structdate));
}
A.8B.6C.10D.12
43.下列程序中c的二進(jìn)制值是()。
chara=2,b=4,C;
c=a^b>>2;
A.00000011B.00010100C.00011100D.00011000
44.算法的空間復(fù)雜度是指()。
A.算法程序的長(zhǎng)度B.算法程序中的指令條數(shù)C.算法程序所占的存儲(chǔ)空間D.執(zhí)行算法需要的內(nèi)存空間
45.下列程序的運(yùn)行結(jié)果是______。main(){inta[6],i;for(i=2;i<6;i++){a[i]=4*(i-2*(i>3))%5;printf("%2d",a[i]);}}
A.2323B.1212C.3232D.2222
46.下面程序段的輸出為()。
#include"stdio.h"
main
{
printf("%d\n",12<<2);
}
A.0B.47C.48D.24
47.若有如下說(shuō)明,且int類(lèi)型占兩個(gè)字節(jié),則正確的敘述為()。structst{inta;intb[2];}a;
A.結(jié)構(gòu)體變量a與結(jié)構(gòu)體成員a同名,定義是合法的
B.程序只在執(zhí)行到該結(jié)構(gòu)體時(shí)才為結(jié)構(gòu)體st分配存儲(chǔ)單元
C.程序運(yùn)行時(shí)為結(jié)構(gòu)體st分配8字節(jié)存儲(chǔ)單元
D.類(lèi)型名structst可以通過(guò)extern關(guān)鍵字提前引用
48.數(shù)字字符0的ASCII值為48,運(yùn)行下列程序的輸出結(jié)果是()。main(){chara='1',b='2';printf("%c,",b++);printf("%d\n",b-A);}
A.3,2B.50,2C.2,2D.2,50
49.十進(jìn)制數(shù)269轉(zhuǎn)換成十六進(jìn)制數(shù)是______。
A.10EB.10DC.10CD.10B
50.下列敘述中正確的是()。
A.break語(yǔ)句只能用于swish語(yǔ)句體中
B.continue語(yǔ)句的作用是使程序的執(zhí)行流程跳出包含它的所有循環(huán)
C.break語(yǔ)句只能用在循環(huán)體內(nèi)和switch語(yǔ)句體內(nèi)
D.在循環(huán)體內(nèi)使用break語(yǔ)句和continue語(yǔ)句的作用相同
51.已經(jīng)定義ch為字符型變量,以下賦值表達(dá)式中錯(cuò)誤的是______。
A.ch='\'B.ch=62+3C.ch=NULLD.ch='\xaa'
52.設(shè)a=12、b=12345,執(zhí)行語(yǔ)句printf('%4d,%4d",a,b);的輸出結(jié)果為()
A.12,123B.12,12345C.121,234D.12,123456
53.有以下程序
#include<stdio.h>
#include<string.h>
typedefstruct{charname[9];charsex;floatscore[2];}STU;
voidf(STUa)
{STUb={"Zhao",′m′,850,900};inti;
strcpy(,);
a.sex=b.sex;
for(i=0;i<2;i++)a.score[i]=b.score[i];
}
main()
{STUc={"Qian",′f′,95.0,92.0};
f(c);
printf("%s,%c,%2.0f,%2.0f\n",,c.sex,c.score[0],c.score[1]);
}
程序的運(yùn)行結(jié)果是
A.Qian,f,95,92B.Qian,m,85,90C.Zhao,f,95,92D.Zhao,m,85,90
54.完整的計(jì)算機(jī)存儲(chǔ)器應(yīng)包括______。
A.軟盤(pán)、硬盤(pán)B.磁盤(pán)、磁帶、光盤(pán)C.內(nèi)存儲(chǔ)器、外存儲(chǔ)器D.RAM、ROM
55.下列描述中,不是線(xiàn)性表順序存儲(chǔ)結(jié)構(gòu)特征的是
A.不便于插入和刪除B.需要連續(xù)的存儲(chǔ)空間C.可隨機(jī)訪(fǎng)問(wèn)D.需另外開(kāi)辟空間來(lái)保存元素之間的關(guān)系
56.有以下程序
#include<string.h>
main()
{charp[]={′a′,′b′,′c′},q[10]={′a′,′b′,′c′};
printf("%d%d\n",strlen(p),strlen(q));}
以下敘述中正確的是
A.在給p和q數(shù)組置初值時(shí),系統(tǒng)會(huì)自動(dòng)添加字符串結(jié)束符,故輸出的長(zhǎng)度都為3
B.由于p數(shù)組中沒(méi)有字符串結(jié)束符,長(zhǎng)度不能確定,但q數(shù)組中字符串長(zhǎng)度為3
C.由于q數(shù)組中沒(méi)有字符串結(jié)束符,長(zhǎng)度不能確定,但p數(shù)組中字符串長(zhǎng)度為3
D.由于p和q數(shù)組中都沒(méi)有字符串結(jié)束符,故長(zhǎng)度都不能確定
57.設(shè)有以下定義和語(yǔ)句inta[3][2]={1,2,3,4,5,6,},*p[3];p[0]=a[1];則*(p[0]+1)所代表的數(shù)組元素是
A.a[0][1]B.a[1][0]C.a[1][1]D.a[l][2]
58.以下不能正確計(jì)算代數(shù)式
值的C語(yǔ)言表達(dá)式是()。
A.1/3*sin(1/2)*sin(1/2)
B.sin(0.5)*sin(0.5)/3
C.pow(sin(0.5),2)/3
D.40546.0*pow(sin(1.0/2),2)
59.當(dāng)c的值不為0時(shí),在下列選項(xiàng)中能正確將c的值賦給變量a、b的是______。
A.c=b=a;B.(a=c)||(b=c):C.(a=c)&&(b=c);D.a=c=b;
60.樹(shù)最適合用來(lái)表示()。
A.有序數(shù)據(jù)元素B.無(wú)序數(shù)據(jù)元素C.元素之間具有分支層次關(guān)系的數(shù)據(jù)D.元素之間無(wú)聯(lián)系的數(shù)據(jù)
四、選擇題(20題)61.
62.
63.有以下程序
main()
{intm=14,n=24;
printf("%d,%d",m++,++n);
printf("%d,%d\n",n++,++m);
}
程序運(yùn)行后的輸出結(jié)果是
A.15252616B.14252515
C.14252516D.14252615
64.
65.有以下程序(說(shuō)明:字母A的ASCIl碼值是65):
程序運(yùn)行后的輸出結(jié)果是()。
A.BTB.YEC.YTD.BY
66.下列敘述中正確的是()。
A.算法就是程序B.設(shè)計(jì)算法時(shí)只需要考慮數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)C.設(shè)計(jì)算法時(shí)只需要考慮結(jié)果的可靠性D.以上三種說(shuō)法都不對(duì)
67.
有以下結(jié)構(gòu)體說(shuō)明和變量的定義,且指針P指向變量a,指針q指向變量b,則不能把結(jié)點(diǎn)b連接到結(jié)點(diǎn)a之后的語(yǔ)句是()。
structnode
{chardata;
structnode*next:
}a,b,*p=&a,*q=&b;
A.a.next=q;B.P.next=&b;C.p->next=&b;D.(*p).next=q;
68.設(shè)變量a、b、c、d和y都已正確定義并賦值。若有以下if語(yǔ)句
if(a<b)
if(c==d)y=0;
Elsey=1;
該語(yǔ)句所表示的含義是()。
A.
B.
C.
D.
69.有以下程序:
main()
{intx=0,y=5,z=3;
while(z-->0&&++x<5?x:y--)y=y-1
Printf("%d,%d,%d\n",x,y,z);
}
程序執(zhí)行后的輸出結(jié)果是()。
A.3,2,0B.3,2,-1C.4,3,-1D.3,-1,-2
70.按照C語(yǔ)言規(guī)定的用戶(hù)標(biāo)識(shí)符命名規(guī)則,不能出現(xiàn)在標(biāo)識(shí)符中的是()。
A.大寫(xiě)字母B.連接符C.數(shù)字字符D.下劃線(xiàn)
71.將E—R圖轉(zhuǎn)換為關(guān)系模式時(shí),實(shí)體和聯(lián)系都可以表示為()。
A.屬性B.鍵C.關(guān)系D.域
72.
73.下列選項(xiàng)中不合法的十六進(jìn)制數(shù)是()。
A."0"xffB."0"X11C."0"x1gD.”0”Xabc
74.有以下程序程序運(yùn)行后的輸出結(jié)果是()。A.24B.28C.32D.36
75.若已定義:inta[9],*p=a;并在以后的語(yǔ)句中未改變p的值,不能表示a[1]地址的表達(dá)式為()。
A.p+1B.a+1C.a++D.++p
76.表達(dá)式:(im)((double)9/2)一9%2的值是()。
A.0B.3C.4D.5
77.有以下程序程序運(yùn)行后的輸出結(jié)果是()。
A.0B.2C.1D.3
78.以下程序運(yùn)行后的輸出結(jié)果是()。
A.1B.2C.4D.8
79.若有代數(shù)式(其中e僅代表自然對(duì)數(shù)的底數(shù),不是變量),則以下能夠正確表示該代數(shù)式的c語(yǔ)言表達(dá)式是()。
80.
五、程序改錯(cuò)題(1題)81.下列給定的程序中,函數(shù)proc()的功能是:將str所指字符串中出現(xiàn)的t1所指字符串全部替換成t2所指字符串,所形成的新的字符串放在w所指的數(shù)組中。在此處,要求t1和t2所指字符串的長(zhǎng)度相同。例如,當(dāng)str所指字符串中所指的內(nèi)容為abcdabcdef9,t1所指字符串中的內(nèi)容為bc,t2所指字符串中的內(nèi)容為11時(shí),結(jié)果在w所指的數(shù)組中的內(nèi)容應(yīng)為alldalldefg。請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開(kāi)考生文件夾下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,請(qǐng)編寫(xiě)函數(shù)其功能是移動(dòng)一維數(shù)組中的內(nèi)容,若數(shù)組中有n個(gè)整數(shù),要求把下標(biāo)為0~p(含p,p小于等于n-1)的數(shù)組元素平移到數(shù)組的最后。例如,一維數(shù)組中的原始內(nèi)容為1、2、3、4、5、6、7、8、9、10;P的值為3。移動(dòng)后,一維數(shù)組中的內(nèi)容應(yīng)為5、6、7、8、9、10、1、2、3、4。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)main()和其他函數(shù)中的內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫(xiě)的若干語(yǔ)句。試題程序:#include<stdio.h>#defineN80voidfun(int*w,intp,intn){}main(){ inta[N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; inti,p,n=15; printf(“Theoriginaldata:\n”); for(i=0;i<=""p=""> printf(“%3d”,a[i]); printf(“\n\nEnterp:”); scanf(“%d”,&p); fun(a,p,n); printf(“\nThedataaftermoving:\n”); for(i=0;i<=""p=""> printf(“%3d”,a[i]); printf(“\n\n”);}
參考答案
1.D考查if循環(huán)語(yǔ)句。if(表達(dá)式),其中表達(dá)式是一個(gè)條件,條件中可以是任意的合法的數(shù)值。
2.D解析:邏輯運(yùn)算符兩側(cè)的運(yùn)算對(duì)象可以是任意合法的表達(dá)式。邏輯表達(dá)式的運(yùn)算結(jié)果或者為1(“真”),或者為0(“假”)。
3.AA?!窘馕觥緾語(yǔ)言源程序不能表示八進(jìn)制,在C語(yǔ)言中,所有的數(shù)值型常量都帶有符號(hào),所以整型數(shù)量只區(qū)別整型和長(zhǎng)整型兩種形式,整型常量和長(zhǎng)整型常量均可用十進(jìn)制、二進(jìn)制、十六進(jìn)制3種形式表示,故A不正確。
4.A棧是限定只在一端進(jìn)行插入與刪除的線(xiàn)性表,按照“先進(jìn)后出”或“后進(jìn)先出”的原則組織數(shù)據(jù)。棧頂元素總是最后被插入的元素,從而也是最先能被刪除的元素;棧底元素總是最先被插入的元素,從而也是最后才能被刪除的元素。
5.D
6.A第一調(diào)用func函數(shù)時(shí)輸出4,第二次調(diào)用func函數(shù)時(shí)num的值并不會(huì)釋放,仍然是上次修改后的值4,第二次調(diào)用結(jié)果為8,所以輸出結(jié)果是48。
7.D解析:本題主要考查算術(shù)運(yùn)算的優(yōu)先級(jí)。順序如下:
[*]
注:*=、>、<<、%、sizeof的優(yōu)先級(jí)依次遞增。
8.A廣播/電視是一種單向的、點(diǎn)對(duì)多點(diǎn)(面)的以信息傳遞為主要目的的系統(tǒng)。
9.BS(k+j)=(k+j)*k+j*2=(5+2)*5+2*2=39,同理S(k-1)=(k+j)*k+j*2=\r\n(5-2)*5-2*2=11,所以答案選擇B。
10.D解析:快速排序的基本思想是,通過(guò)一趟排序?qū)⑴判蛴涗浄指畛瑟?dú)立的兩部
分,其中一部分記錄的關(guān)鍵字均比另一部分記錄的關(guān)鍵字小,再分別對(duì)這兩部分記錄繼
續(xù)進(jìn)行排序,以達(dá)到整個(gè)序列有序;插入排序的基本操作是指將無(wú)序序列中的各元素依
次插入到已經(jīng)有序的線(xiàn)性表中,從而得到一個(gè)新的序列;選擇排序的基本思想是:掃描整
個(gè)線(xiàn)性表,從中選出最小的元素,將它交換到表的最前面(這是它應(yīng)有的位置),然后對(duì)剩
下的于表采用同樣的方法,直到表空為止;歸并:排序是將兩個(gè)或兩個(gè)以上的有序表組合
成一個(gè)新的有序表。
注意:各種排序方法實(shí)現(xiàn)過(guò)程及實(shí)現(xiàn)機(jī)制。
11.A此題是一個(gè)簡(jiǎn)單的函數(shù)調(diào)用,當(dāng)i=0并且i<30,執(zhí)行i+=10,并且調(diào)用函數(shù)f,所以當(dāng)i=0時(shí),結(jié)果為1,當(dāng)i=10時(shí),結(jié)果為101,當(dāng)i=20時(shí),結(jié)果為401,所以a=1+101+401=503。
12.A
13.CC語(yǔ)言中,函數(shù)名也是一個(gè)指針,是函數(shù)的人口地址。使函數(shù)指針f指向函數(shù)fun的入口地址,直接將函數(shù)名fun賦給指針f即可。故本題答案為C選項(xiàng)。
14.A函數(shù)名代表函數(shù)的入口地址,函數(shù)指針P指向一個(gè)同類(lèi)型的函數(shù)f時(shí),可以寫(xiě)成“p=f;”,而不能寫(xiě)成“P=&f;”,選項(xiàng)B錯(cuò)誤。指針p指向一個(gè)數(shù)組f時(shí),可以寫(xiě)成“p=f;”,數(shù)組名f代表數(shù)組的首地址,選項(xiàng)C錯(cuò)誤。指針變量指向的是變量的地址,選項(xiàng)D錯(cuò)誤。char型根據(jù)轉(zhuǎn)化原則可以轉(zhuǎn)化為double類(lèi)型。故本題答案為A選項(xiàng)。
15.D當(dāng)k=1時(shí),循環(huán)成立,輸出w[l]的數(shù)組即EFGH,接著執(zhí)行k++后k為2;當(dāng)k=2時(shí),循環(huán)成立,輸出w[2]的數(shù)組即IJKL,接著執(zhí)行k++后,k為3;當(dāng)k=3時(shí),循環(huán)不成立,退出。
16.D執(zhí)行第一次for循環(huán)時(shí),用表達(dá)式p[i][J]!=\o來(lái)判斷字符串?dāng)?shù)組指針P是否到達(dá)字符串的結(jié)尾,如果沒(méi)有到達(dá),繼續(xù)執(zhí)行while中的語(yǔ)句。if語(yǔ)句表示(p[i][j]-\o)除2的余數(shù)不為0時(shí),即字符串所有奇數(shù),執(zhí)行后面的語(yǔ)句。所以退出第1次for的循環(huán)體時(shí),輸出為397,執(zhí)行第2次循環(huán)體。對(duì)字符串“2584”進(jìn)行處理,輸出結(jié)果為5,因而最后輸出結(jié)果為3975。
17.C解析:本題考核的知識(shí)點(diǎn)是字符型變量的基本概念。用單引號(hào)括起來(lái)的一個(gè)字符稱(chēng)為字符常量,而選項(xiàng)B和選項(xiàng)D中用的是雙引號(hào),而用雙引號(hào)括起來(lái)的字符為字符串常量,故選項(xiàng)B和選項(xiàng)D不正確。因?yàn)樵贑語(yǔ)言中,字符常量在存儲(chǔ)時(shí),并不是把該字符本身放到內(nèi)存單元中去,而是將該字符的相應(yīng)的ASCII代碼放到存儲(chǔ)單元中,所以C語(yǔ)言使字符型數(shù)據(jù)和整形數(shù)據(jù)之間可以通用,選項(xiàng)C正確.而選項(xiàng)A中,給字符型變量賦值時(shí)只能賦一個(gè)字符,而9,7作為字符時(shí)為兩個(gè)字符且必須分別為單引號(hào)括起來(lái),故選項(xiàng)A不正確,所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
18.D
19.C
20.D結(jié)構(gòu)體指針變量p指向a數(shù)組的第1個(gè)元素,所以“p->x”為20。執(zhí)行“p=p->y”后,p指向數(shù)組a的第2個(gè)元素,所以輸出15。故本題答案為D選項(xiàng)。
21.6211342321
22.28
23.完善性軟件維護(hù)活動(dòng)包括以下幾類(lèi):改正性維護(hù),適應(yīng)性維護(hù)、完善性維護(hù)和預(yù)防性維護(hù),完善性維護(hù)是指為了滿(mǎn)足用戶(hù)對(duì)軟件提出的新功能與性能要求,需要修改或再開(kāi)發(fā)軟件,以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件的可維護(hù)性。
24.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)解析:Jackson方法是—‘種面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化方法。
25.x+=2
26.關(guān)系或一個(gè)關(guān)系關(guān)系或一個(gè)關(guān)系解析:在關(guān)系數(shù)據(jù)庫(kù)中,把數(shù)據(jù)表示成二維表,而一個(gè)二維表就是一個(gè)關(guān)系。
27.先進(jìn)后出先進(jìn)后出解析:隊(duì)列和棧都是線(xiàn)性結(jié)構(gòu),但是不同之處在于隊(duì)列的操作順序是先進(jìn)先出,而棧的操作順序是先進(jìn)后出。
28.非線(xiàn)性結(jié)構(gòu)非線(xiàn)性結(jié)構(gòu)解析:對(duì)于一個(gè)非空的數(shù)據(jù)結(jié)構(gòu),如果同時(shí)滿(mǎn)足下列兩個(gè)條件,即1)有且只有一個(gè)根結(jié)點(diǎn);2)每一個(gè)結(jié)點(diǎn)最多有一個(gè)前件,也最多有一個(gè)后件;即為線(xiàn)性結(jié)構(gòu),而二叉樹(shù)的結(jié)點(diǎn)可能存在兩個(gè)后件,所以是非線(xiàn)性結(jié)構(gòu)。
29.44解析:一維數(shù)組元素的定義形式為:數(shù)組名[N],則該數(shù)組中元素的下限是0,上限是N-1。
30.對(duì)象對(duì)象解析:將屬性、操作相似的對(duì)象歸為類(lèi),也就是說(shuō),類(lèi)是具有共同屬性、共同方法的對(duì)象的集合。
31.b=14b=14解析:分析程序可知,n的初始值為1,因此,while(n<=3)循環(huán)3次。第1次:c=c*a=2:b=b+c=2;n=2。第2次:c=c*a=4;b=-b+c=6;n=3。第3次;c=c*a=8:b=b+c=14。當(dāng)n=4時(shí),判斷條件不滿(mǎn)足,退出循環(huán)。
32.數(shù)據(jù)流數(shù)據(jù)流解析:結(jié)構(gòu)化分析方法的實(shí)質(zhì)是著眼于數(shù)據(jù)流,自頂向下,逐層分解,建立系統(tǒng)的處理流程,以數(shù)據(jù)流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏輯模型。
33.88解析:本題考查基本的for循環(huán)條件,i+=2表示i每次遞增2,從0開(kāi)始,輸出5個(gè)整數(shù)則需要的條件是i<=8。
34.getchargetchar解析:考查了字符可以作為整型變量來(lái)對(duì)待,參與操作。題中要求根據(jù)輸入的字符調(diào)用函數(shù)YesNo來(lái)判斷輸入的字符是y(Y)還是n(N),字符的輸入可用字符輸入函數(shù)getchar。函數(shù)YesNo用來(lái)判斷一個(gè)字符是y(Y)還是n(N),主要用了一個(gè)switch多分支結(jié)構(gòu)來(lái)比較輸入字符與字符\ue008'y',\ue009'Y'、,'n','N'是否相等來(lái)實(shí)現(xiàn)的。
35.structst或exstructst或ex解析:結(jié)構(gòu)體類(lèi)型數(shù)據(jù),其數(shù)據(jù)成員各自占據(jù)不同的存儲(chǔ)空間,整個(gè)結(jié)構(gòu)體變量所占存儲(chǔ)單元的字節(jié)數(shù)為每一個(gè)數(shù)據(jù)成員所占的存儲(chǔ)空間的和。注意:共用體變量所占存儲(chǔ)單元字節(jié)數(shù)的計(jì)算。
36.隊(duì)尾隊(duì)尾解析:在隊(duì)列中,允許插入的一端叫做“隊(duì)尾”,允許刪除的一端叫做“隊(duì)頭”。
37.a[1][1]a[1][1]解析:p是一個(gè)指針數(shù)組,p[0]指向數(shù)組a[1][0]。*(p[0]+1)代表數(shù)組a[1][1]。
38.12。12。解析:表達(dá)式x*=(y++)+(--z)相當(dāng)于先進(jìn)行z的自減運(yùn)算,再執(zhí)行x=x*(y+z),最后y自加。因此,變量x的值為12,y和z的值分別是4和3。
39.dd解析:d被定義為一個(gè)結(jié)構(gòu)體類(lèi)型變量,求結(jié)構(gòu)體變量a所占存儲(chǔ)單元的字節(jié)數(shù)即sizeof(d)。
40.88解析:本題考查帶參數(shù)的宏定義及相關(guān)運(yùn)算.運(yùn)算過(guò)程為:t=B*2=A+3*2=2+3*2=8。
41.C解析:本題考查對(duì)數(shù)組的理解。C語(yǔ)言規(guī)定只能逐個(gè)引用數(shù)組元素,而不能一次引用整個(gè)數(shù)組。對(duì)于字符數(shù)組,可以將整個(gè)字符串一次輸入或輸出。所以,選項(xiàng)C)不正確。
42.B解析:解答本題需要注意兩個(gè)知識(shí)點(diǎn):①結(jié)構(gòu)體變量的長(zhǎng)度是其內(nèi)部成員長(zhǎng)度的總和,本題中,structdate中包含year、month、day這3個(gè)整型變量,一個(gè)整型變量占2個(gè)字節(jié);②sizeof是求所占字節(jié)數(shù)的運(yùn)算符。
43.A解析:本題主要考查按位異或和右移運(yùn)算。b=4的二進(jìn)制為00000100,b>>2后為00000001,a=2的二進(jìn)制為00000010,兩者異或?yàn)?0000011。
44.D解析:算法的復(fù)雜度主要包括算法的時(shí)間復(fù)雜度和算法的空間復(fù)雜度。所謂算法的時(shí)間復(fù)雜度是指執(zhí)行算法所需要的計(jì)算工作量;算法的空間復(fù)雜度一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。
45.C解析:本題程序的功能是對(duì)數(shù)組元素賦值,難點(diǎn)是對(duì)表達(dá)式4*(i-2*(i>3))%5的分析。
46.C解析:考查位運(yùn)算的運(yùn)算原理。<<為左移運(yùn)算符,運(yùn)算符的左邊是移位對(duì)象;右邊是整型表達(dá)式,代表左移的位數(shù),左移時(shí),右端(低位)補(bǔ)0;左端(高位)移出的部分舍棄。
47.A
48.C解析:自增運(yùn)算符“++”,出現(xiàn)在變量之前,表示先使變量的值加1,再使用變量的值進(jìn)行運(yùn)算;出現(xiàn)在變量之后,表示先使用變量的值進(jìn)行運(yùn)算,冉使變量的值加1。例如題中的“b++”,題中第一條語(yǔ)句先輸出字符b的值,此時(shí)變量b='2',因此輸出值為2;再使b的值加1,b='3',因此第二條語(yǔ)句輸出:b-a='3'-'1'=2。
49.B解析:先將十進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制為100001101,再轉(zhuǎn)換成十六進(jìn)制為10D
50.C解析:只能在循環(huán)體內(nèi)和swish語(yǔ)句體內(nèi)使用break語(yǔ)句。當(dāng)break出現(xiàn)在循環(huán)體的switch語(yǔ)句體內(nèi)時(shí),其作用只是跳出該switch語(yǔ)句體,并不能中止循環(huán)體的執(zhí)行。若想強(qiáng)行中止循環(huán)體的執(zhí)行,可以在循環(huán)體中,但并不在switch語(yǔ)句中設(shè)置break語(yǔ)句,滿(mǎn)足某種條件則跳出本層循環(huán)體。
51.A解析:反斜杠字符“\\”賦給字符,應(yīng)該寫(xiě)成ch='\\\\',所以A是錯(cuò)誤的。
52.B
53.A解析:本題考查的是函數(shù)調(diào)用時(shí)的參數(shù)傳遞問(wèn)題。程序在調(diào)用函數(shù)f時(shí),傳給函數(shù)f的參數(shù)只是結(jié)構(gòu)變量c在棧中的一個(gè)拷貝,函數(shù)f的所有操作只是針對(duì)這個(gè)數(shù)據(jù)拷貝進(jìn)行的修改,這些都不會(huì)影響變量c的值。
54.C
55.D解析:線(xiàn)性表的順序存儲(chǔ)是用一片連續(xù)的空間來(lái)存放數(shù)據(jù)元素,其特點(diǎn)是邏輯上相鄰的元素在物理位置上也相鄰。數(shù)據(jù)元素之間邏輯上的先后關(guān)系自動(dòng)隱含在物理位置的相鄰元素之中,因此,不需要另外開(kāi)辟空間來(lái)保存元素之間的關(guān)系。
56.A解析:在給p和q數(shù)組賦初值時(shí),系統(tǒng)會(huì)自動(dòng)添加字符串結(jié)束符,從題目中可以看出數(shù)組p和q都有3個(gè)字符,所以長(zhǎng)度均為3。
57.C解析:本題中首先定義了一個(gè)3行2列的數(shù)組a,一個(gè)長(zhǎng)度為3的指針數(shù)組p,接著把地址a[1]賦給P[1]此時(shí)p[0]為a[1][0]的地址,p[0]+1為a[1][1]的地址,故*(p[0]+1)代表的元素為s[1][1]。所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
58.A
59.C
60.C樹(shù)最適合用來(lái)表示元素之間具有分支層次關(guān)系的數(shù)據(jù),故本題選C。
61.D
62.B
63.C本題考查自增運(yùn)算符的使用。
自增運(yùn)算符與變量的結(jié)合方向?yàn)樽杂蚁蜃?。題目中用兩個(gè)printf函數(shù)進(jìn)行變量的輸出,第一個(gè)printf函數(shù)需要輸出的變量為m++和++n,m的初始值為14,n的初始值為24,m++操作表示先將m的值進(jìn)行輸出,再進(jìn)行++操作,輸出m的值為14,進(jìn)行++操作后,m的值變?yōu)?5。++n操作是將n的值加1后再輸出,輸出值為25。同理,對(duì)于第二個(gè)printf函數(shù),有輸出25,16。結(jié)果為14252516。
64.D
65.B本題中執(zhí)行fun(a)時(shí),會(huì)取字符串a(chǎn)的第一個(gè)字母B,因?yàn)樽帜窧的ASCIl碼值為66,所以不會(huì)輸出字母8,函數(shù)只會(huì)輸出ASCIl碼值為奇數(shù)的字母,字母Y的ASCIl碼值為89,字母T的ASCIl碼值為84,字母E的ASCII碼值為69。因此B選項(xiàng)正確。
66.D算法是指解題方案的準(zhǔn)確而完整的描述,算法不等于程序,也不等于計(jì)算方法,所以A錯(cuò)誤。設(shè)計(jì)算法時(shí)不僅要考慮對(duì)數(shù)據(jù)對(duì)象的運(yùn)算和操作,還要考慮算法的控制結(jié)構(gòu)。故答案為D選項(xiàng)。
67.B
\n本題考查結(jié)構(gòu)體指針變量的賦值方法,要把結(jié)點(diǎn)b連接到結(jié)點(diǎn);l的后面,必須把b的地址給a的next指針。故8正確。
\n
68.Cif-else語(yǔ)句時(shí)if語(yǔ)句的嵌套,也就是if-else語(yǔ)句在if語(yǔ)句的條件下執(zhí)行,所以?xún)蓚€(gè)條件相同的地方都是a<b.
69.D第一次:x=0,y=5,z=3,z>0,z--=2,++x=1<5,所以執(zhí)行y--=4,y=y-1=4-1=3;
第二次:x=1,y=4,z=2,z>0,z--=1,++x=2<5,所以執(zhí)行y--=2,y=y-1=2-1=1
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年風(fēng)電場(chǎng)35kV輸電線(xiàn)路工程合同3篇
- 2024建筑材料多孔磚買(mǎi)賣(mài)協(xié)議版B版
- 2024年運(yùn)輸合同物流金融產(chǎn)品設(shè)計(jì)與風(fēng)險(xiǎn)管理3篇
- 中考英語(yǔ)-英語(yǔ)-任務(wù)型閱讀理解專(zhuān)題練習(xí)(附答案)
- 2025年度土地承包經(jīng)營(yíng)權(quán)終止合同范本3篇
- 2025年度安全生產(chǎn)信息化系統(tǒng)設(shè)計(jì)與實(shí)施協(xié)議2篇
- 2025年度物流保險(xiǎn)采購(gòu)合同執(zhí)行細(xì)則3篇
- 湖南工藝美術(shù)職業(yè)學(xué)院《化妝品化學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 通化師范學(xué)院《植物生物技術(shù)實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 重慶醫(yī)科大學(xué)《精細(xì)化學(xué)品分析檢測(cè)技術(shù)》2023-2024學(xué)年第一學(xué)期期末試卷
- 技術(shù)服務(wù)合同-英文版模板
- 軍營(yíng)防襲擊應(yīng)急預(yù)案演練
- 北京同仁醫(yī)院全面預(yù)算管理
- 附件1:上海市新增醫(yī)療服務(wù)項(xiàng)目?jī)r(jià)格申請(qǐng)受理表
- 法定代表人身份證明書(shū)-模板
- 反射療法師理論考試復(fù)習(xí)題庫(kù)匯總(含答案)
- word版改善就醫(yī)感受提升患者體驗(yàn)評(píng)估操作手冊(cè)2023版
- GB/T 43218-2023煤炭測(cè)硫儀性能驗(yàn)收導(dǎo)則
- 可許則許-陳海量居士
- 勘察設(shè)計(jì)招標(biāo)評(píng)分標(biāo)準(zhǔn)
- 化學(xué)倉(cāng)應(yīng)急預(yù)案
評(píng)論
0/150
提交評(píng)論