




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(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ì)知識(shí)點(diǎn)匯總卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.以下對(duì)軟件特點(diǎn)描述錯(cuò)誤的是()。
A.軟件的使用存在老化問(wèn)題B.軟件的復(fù)雜性高C.軟件是一種邏輯實(shí)體,具有抽象性D.軟件的運(yùn)行對(duì)計(jì)算機(jī)系統(tǒng)具有依賴(lài)性
2.線(xiàn)性表的順序存儲(chǔ)結(jié)構(gòu)是一種()。
A.隨機(jī)存取的存儲(chǔ)結(jié)構(gòu)B.順序存取的存儲(chǔ)結(jié)構(gòu)C.索引存取的存儲(chǔ)結(jié)構(gòu)D.Hash存取的存儲(chǔ)結(jié)構(gòu)
3.數(shù)字字符“2”的ASCII碼為十進(jìn)制數(shù)50,數(shù)字字符“5”的ASCII碼為十進(jìn)制數(shù)()
A.52B.55C.54D.53
4.下面哪種排序的平均比較次數(shù)最少()
A.插入排序B.選擇排序C.堆排序D.快速排序
5.高度為h的滿(mǎn)二叉樹(shù)的結(jié)點(diǎn)數(shù)是________個(gè)。
A.log2h+1B.2h+1C.2h-1D.2h-1
6.若有說(shuō)明語(yǔ)句:charc='\72'則變量c()。
A.包含1個(gè)字符B.包含2個(gè)字符C.包含3個(gè)字符D.說(shuō)明不合法,c的值不確定
7.當(dāng)執(zhí)行以下程序段時(shí),()。x=-l:do{x=x*X;)while(!x);A.循環(huán)體將執(zhí)行一次B.循環(huán)體將執(zhí)行兩次C.循環(huán)體將執(zhí)行無(wú)限次D.系統(tǒng)將提示有語(yǔ)法錯(cuò)誤
8.下列哪個(gè)算法是對(duì)一個(gè)list排序的最快方法()
A.快速排序B.冒泡排序C.二分插入排序D.線(xiàn)性排序
9.數(shù)據(jù)庫(kù)系統(tǒng)的核心是()。
A.數(shù)據(jù)模型B.數(shù)據(jù)庫(kù)管理系統(tǒng)C.數(shù)據(jù)庫(kù)D.數(shù)據(jù)庫(kù)管理員
10.需求分析最終結(jié)果是產(chǎn)生
A.項(xiàng)目開(kāi)發(fā)計(jì)劃B.需求規(guī)格說(shuō)明書(shū)C.設(shè)計(jì)說(shuō)明書(shū)D.可行性分析報(bào)告
11.
12.下面程序的時(shí)間復(fù)雜為()A.O(n)B.O(n^2)C.O(n^3)D.O(n^4)
13.在位運(yùn)算中,操作數(shù)每左移兩位,其結(jié)果相當(dāng)于()。
A.操作數(shù)乘以2B.操作數(shù)除以2C.操作數(shù)除以4D.操作數(shù)乘以4
14.若輸入“abcdef”“abdef”,下述程序的輸出結(jié)果為()。#include<stdio.h>#include<string.h>main{intn;chars1[20],s2[20],*p1,*p2;scanf("%s",s1);scanf("%S",s2);p1=s1;p2=s2;n=strcmp(p1,p2);printf("Vood\n",n);}A.-1B.0C."abcdef"D."abdef"
15.有以下程序:#include<stdio.h>voidsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i+=2)for(j=i+2;j<n;j+=2)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,10);for(i=0;i<10;i++)printf("%d.",aa[i]);printf("\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.9,2,7,4,5,6,3,8,1,10,
D.1,10,3,8,5,6,7,4,9,2,
16.有以下程序:
程序執(zhí)行后的輸出結(jié)果是()。
A.357B.753C.369D.751
17.下列選項(xiàng)中,不是一個(gè)算法的基本特征的是()。
A.完整性B.可行性C.有窮性D.擁有足夠的情報(bào)
18.下列各排序法中,最壞情況下的時(shí)間復(fù)雜度最低的是()
A.希爾排序B.快速排序C.堆排序D.冒泡排序
19.圖的深度優(yōu)先遍歷類(lèi)似于二叉樹(shù)的_______。
A.先序遍歷B.中序遍歷C.后序遍歷D.層次遍歷
20.若有語(yǔ)句“void*P=malloc(80);”,則以下敘述錯(cuò)誤的是()。
A.可以通過(guò)指針P直接訪(fǎng)問(wèn)用malloc開(kāi)辟的這塊內(nèi)存
B.p所指內(nèi)存可以通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換當(dāng)作具有20個(gè)int型元素的一維數(shù)組來(lái)使用
C.p所指內(nèi)存可以通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換當(dāng)作具有10個(gè)double型元素的一維數(shù)組來(lái)使用
D.P所指內(nèi)存可以通過(guò)強(qiáng)制類(lèi)型轉(zhuǎn)換當(dāng)作具有80個(gè)char型元素的一維數(shù)組來(lái)使用
二、2.填空題(20題)21.數(shù)據(jù)庫(kù)管理系統(tǒng)是位于用戶(hù)與______之間的軟件系統(tǒng)。
22.有如下圖所示的雙鏈表結(jié)構(gòu),請(qǐng)根據(jù)圖示完成結(jié)構(gòu)體的定義:
structaa
{intdata;
【】}node;
23.與表達(dá)式a+=b等價(jià)的另一書(shū)寫(xiě)形式是______。
24.軟件測(cè)試的方法有動(dòng)態(tài)測(cè)試、靜態(tài)測(cè)試和【】13種。
25.下列程序的輸出結(jié)果【】。
#definePR(ar)printf("ar=%d",ar)
main()
{intj,a[]={1,3,5,7,9,1l,13,1},*p=a+5;
for(j=3;j;j--)
switch(j)
{case1:
case2:PR(*p++);break;
case3:PR(*(--p));}}
26.若有以下程序:
main()
{int,p,a=5;
if(P=a!=0)
printf("%d\n",p);
else
printf("%d\n",p+2);
}
執(zhí)行后輸出結(jié)果是【】。
27.數(shù)據(jù)庫(kù)系統(tǒng)中實(shí)現(xiàn)各種數(shù)據(jù)管理功能的核心軟件稱(chēng)為【】。
28.在結(jié)構(gòu)化分析使用的數(shù)據(jù)流圖中,使()解釋其中的圖形元素。
29.下列程序的輸出結(jié)果是【】。
intt(intx,inty,intcp,intdp)
{cp=x*x+y*y;
dp=x*x-y*y;
}
main()
{inta=4,b=3,c=5,d=6;
t(a,b,c,d);
printf("%d%d\n",c,d);
}
30.在面向?qū)ο蠓椒ㄖ?,?lèi)的實(shí)例稱(chēng)為_(kāi)_____。
31.以下程序的輸出結(jié)果是______。
voidfun()
{staticinta=0;
a+=2;printf("%d",a);
}
main()
{intcc;
for(cc=1;cc<4;cc++)fun();
printf("\n");
}
32.設(shè)有定義:intn,*k=&n;以下語(yǔ)句將利用指針變量k讀寫(xiě)變量n中的內(nèi)容,請(qǐng)將語(yǔ)句補(bǔ)充家整。
seanf("%d",【】);
printf("%d\n",【】);
33.算法的復(fù)雜度主要包括【】復(fù)雜度和空間復(fù)雜度。
34.數(shù)據(jù)的______結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空問(wèn)中的存放形式稱(chēng)為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)或物理結(jié)構(gòu)。
35.執(zhí)行下面程序段后,k的值是【】。
r=1;n=203;k=1
do{k*=n%10*r;n/=10;r++;}while(n);
36.有下列程序;
#include<stdio.h>
main()
{charc;
while((c=getchar())!=',')putchar(++C);
}
程序運(yùn)行時(shí),如果從鍵盤(pán)輸入:A,B,<CR>,則輸出結(jié)果為_(kāi)_____。
37.填空補(bǔ)充以下程序。
#define【】30
{【】;
total=numPRICE;
printf("total=%d,num=%d\n",【】);
}
38.以下程序中函數(shù)fun的功能是:構(gòu)成一個(gè)如圖所示的帶頭結(jié)點(diǎn)的單向鏈表,在結(jié)點(diǎn)的數(shù)據(jù)域中放入了具有兩個(gè)字符的字符串。函數(shù)disp的功能是顯示輸出該單鏈表中所有結(jié)點(diǎn)中的字符串。請(qǐng)?zhí)羁胀瓿珊瘮?shù)disp。
#include<stdio.h>
typedefstructnode/*鏈表結(jié)點(diǎn)結(jié)構(gòu)*/
{charsub[3];
structnode*next;
}Node;
Nodefun(chars)/*建立鏈表*/
{……}
voiddisp(Node*h)
{Node*p;
p=h->next;
while(【】)
{printf("%s\n",P->sub);p=【】;}
}
main()
{Node*hd;
hd=fun();disp(hd);printf("\n");
}
39.數(shù)據(jù)的獨(dú)立性分為邏輯獨(dú)立性與物理獨(dú)立性。當(dāng)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)改變時(shí),其邏輯結(jié)構(gòu)可以不變,因此,基于邏輯結(jié)構(gòu)的應(yīng)用程序不必修改,這稱(chēng)為_(kāi)_____。
40.設(shè)y為血型變量,請(qǐng)寫(xiě)出描述“y是偶數(shù)”的表達(dá)式______。
三、1.選擇題(20題)41.若二維數(shù)組a有m列,且設(shè)a[0][0]位于數(shù)組的第一個(gè)位置上,則計(jì)算任一元素a[i][j]剛在數(shù)組中的位置的式子為()。
A.i*m+jB.j*m+iC.i*m+j-1D.i*m+j+l
42.若有如下程序:main(){inta=6;charch=c;printf("%d\n",(a&2)&&(ch<'m'));}則程序運(yùn)行后的輸出結(jié)果是()
A.0B.1C.2D.3
43.以下程序的運(yùn)行結(jié)果是#defineMIN(x,y)(x)<(y)?(x):(y)main(){inti=10,j=15,kk=10*MIN(i,j);printf("%d\n",k);}
A.10B.15C.100D.150
44.以下程序的結(jié)果是______。inta,b;voidfun(){a=100;b=200;}main(){inta=5;b=7fun();printf("%d%d\n",a,b);}
A.100200B.57C.200100D.75
45.以下對(duì)結(jié)構(gòu)體類(lèi)型變量td的定義中,錯(cuò)誤的是______。
A.typedefstructaa{intn;floatm;}AA;AAtd;
B.structaa{intn;floatm;}td;structaatd;
C.struct{intn;floatm;}aa;
D.struct{intn;floatm;}td;structaatd;
46.若某二叉樹(shù)的前序遍歷訪(fǎng)問(wèn)順序是abdgcefh,中序遍歷訪(fǎng)問(wèn)順序是dgbaechf,則其后序遍歷的結(jié)點(diǎn)訪(fǎng)問(wèn)順序是()。
A.bdgcefhaB.gdbecfhaC.bdgaechfD.gdbehfca
47.在一個(gè)容量為15的循環(huán)隊(duì)列中,若頭指針front=6,尾指針rear=14,則該循環(huán)隊(duì)列中元素個(gè)數(shù)為()。
A.8B.9C.14D.15
48.下列循環(huán)體的執(zhí)行次數(shù)是()。#include<stdio.h>main(){inti,j;for(i=0j=1;i<j+1;i+=1,j--)printf("%d\n",j);}
A.3B.2C.1D.0
49.己知x=3,y=2,則表達(dá)式x*=y+8的值為_(kāi)_____。
A.3B.2C.30D.10
50.下列字符序列中,不可用作C語(yǔ)言標(biāo)識(shí)符的是______。
A.b70B.#abC._symbolD.al
51.以下程序段給數(shù)組所有的元素輸入數(shù)據(jù),請(qǐng)選擇正確答案填入。#include<stdio.h>main(){inta[10]=0;while(i<10)scan("%d"______);::}
A.a+(i++)B.&a[i+1]C.a+iD.&a[++i]
52.以下程序中函數(shù)sort的功能是對(duì)a所指數(shù)組中的數(shù)據(jù)進(jìn)行由大到小的排序:floatsort(inta[],intn){inti,j,t;for(i=0;i<n-1;i++)for(j=i+1;j<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
53.設(shè)有以下語(yǔ)句:charstr1[]="string",str2[8],*str3,*str4="string";則______不是對(duì)庫(kù)函數(shù)的正確調(diào)用。
A.strcpy(str1,"HELLO1");
B.strcpy(str2,"HELLO2");
C.strcpy(str3,"HELLO3");
D.strcpy(str4,"HELLO4");
54.有以下程序intb=2;intfunc(int*A){b+=*a;return(B);}main(){inta=2,res=2;res+=rune(&A);printf("%d\n",res);}程序運(yùn)行后的輸出結(jié)果是()
A.4B.6C.8D.10
55.下列二維數(shù)組初始化語(yǔ)句中,不正確的是()。
A.intb[][2]={1,2,3,4,5,6,7};
B.intb[3][5]={0,0,0};
C.intb[][4]={{1,2},{3,4,5},{6}};
D.intb[3][2]={(1,2),(3,4),(5,6)};
56.軟件開(kāi)發(fā)模型包括Ⅰ、瀑布模型Ⅱ、扇形模型Ⅲ、快速原型法模型Ⅳ、螺旋模型
A.Ⅰ、Ⅱ、ⅢB.Ⅰ、Ⅱ、ⅣC.Ⅰ、Ⅲ、ⅣD.Ⅱ、Ⅲ、Ⅳ
57.有下列程序:main(){intx=5;do{printf("%d",x-=4);}while(1(--x));}程序的輸出結(jié)果是()。
A.1B.20C.1-4D.死循環(huán)
58.設(shè)有以下說(shuō)明語(yǔ)句:structex{intx;flocty;charz;}example;則下面的敘述中不正確的是()
A.struct是結(jié)構(gòu)體類(lèi)型的關(guān)鍵字
B.example是結(jié)構(gòu)體類(lèi)型名
C.x,y,z都是結(jié)構(gòu)體成員名
D.structex是結(jié)構(gòu)體類(lèi)型
59.有以下程序:#include<stdio.h>main(){charc1,c2,c3,c4,c5,c6;scanf(%c%c%c%c,&c1,&c2,&c3,&c4);c5=getchar();c6=getchar();putchar(c1);putchar(c2);printf(%c%c\n,c5,c6);}程序運(yùn)行后,若從鍵盤(pán)輸入(從第1列開(kāi)始)123<回車(chē)>45678<回車(chē)>則輸出結(jié)果是()。
A.1267B.1256C.1278D.1245
60.有以下程序#include<string.h>main(intargc,char*argv[]){inti,len=0;for(i=1;i<argc;i++)len+=strlen(argv[i]);printf("%d\n",len);}程序編譯連接后生成的可執(zhí)行文件是exl.exe,若運(yùn)行時(shí)輸入帶參數(shù)的命令行是:exlabcdefg10<回車(chē)>則運(yùn)行的結(jié)果是:
A.22B.17C.12D.9
四、選擇題(20題)61.下列函數(shù)的功能是()
62.
63.
64.對(duì)長(zhǎng)度為n的線(xiàn)性表排序,在最壞情況下,比較次數(shù)是nlog2n的排序方法是()。
A.快速排序B.冒泡排序C.直接插入排序D.堆排序
65.
66.若有定義語(yǔ)句:“intx=12,y=8,z;”,在其后執(zhí)行語(yǔ)句“z=0.9+x/y;”,則z的值為()。A.1.9B.1C.2D.2.4
67.
68.層次型、網(wǎng)狀型和關(guān)系型數(shù)據(jù)庫(kù)劃分原則是()。
A.記錄長(zhǎng)度B.文件的大小C.聯(lián)系的復(fù)雜程度D.數(shù)據(jù)之間的聯(lián)系方式
69.假設(shè)線(xiàn)性表的長(zhǎng)度為n,則在最壞情況下,冒泡排序需要的比較次數(shù)為()。
A.log2nB.n2
C.n/2D.n(n-1)/2
70.有以下定義語(yǔ)句,編譯時(shí)會(huì)出現(xiàn)編譯錯(cuò)誤的是()。
71.
72.有以下程序程序運(yùn)行后的輸出結(jié)果是()。
A.4B.3C.1D.9
73.下列關(guān)于線(xiàn)性鏈表的敘述中,正確的是()。
A.各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)空間可以不連續(xù),但它們的存儲(chǔ)順序與邏輯順序必須一致
B.各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與邏輯順序可以不一致,但它們的存儲(chǔ)空間必須連續(xù)
C.進(jìn)行插入與刪除時(shí),不需要移動(dòng)表中的元素
D.各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與邏輯順序可以不一致,它們的存儲(chǔ)空間也可以不一致
74.下列敘述中正確的是()。
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ù)處理的效率
75.
76.簡(jiǎn)單的交換排序方法是()。
A.快速排序B.選擇排序C.堆排序D.冒泡排序
77.當(dāng)執(zhí)行下面的程序時(shí),如果輸入ABC,則輸出結(jié)果是()。
#include<stdio.h>
#include<string.h>
voidmain()
{charss[10]="12345",
gets(ss);strcat(ss,"6789");
printf("%s\n",ss);
}
A.ABC6789B.ABC67C.12345ABC6D.ABC456789
78.
以下程序執(zhí)行后sum的值是()。
main
{inti,sum;
for(i=1;i<6;i++)sum+=i:
printf("1%d\n",sum):
}
A.15B.14C.不確定D.0
79.程序調(diào)試的任務(wù)是()。
A.設(shè)計(jì)測(cè)試用例B.驗(yàn)證程序的正確性C.發(fā)現(xiàn)程序中的錯(cuò)誤D.診斷和改正程序中的錯(cuò)誤
80.棧和隊(duì)列的共同特點(diǎn)是()。
A.都是先進(jìn)先出B.都是先進(jìn)后出C.只允許在端點(diǎn)處插入和刪除元素D.沒(méi)有共同點(diǎn)
五、程序改錯(cuò)題(1題)81.下列給定程序中,函數(shù)proc()的功能是:計(jì)算str所指字符串中含有t所指字符串的數(shù)目,并作為函數(shù)值返回。
請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。
注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計(jì)題(1題)82.程序定義了M×M的二維數(shù)組,并在主函數(shù)中自動(dòng)賦值。請(qǐng)編寫(xiě)函數(shù)proc(inta[][M],intn),該函數(shù)的功能是使數(shù)組左下半三角元素中的值加上n。例如,a數(shù)組中的值為:
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫(xiě)的若干語(yǔ)句。
試題程序:
參考答案
1.A軟件具有以下特點(diǎn)。①軟件是一種邏輯實(shí)體,具有抽象性。②軟件沒(méi)有明顯的制作過(guò)程。③軟件在使用期間不存在磨損、老化問(wèn)題。④對(duì)硬件和環(huán)境具有依賴(lài)性。⑤軟件復(fù)雜性高,成本高。⑥軟件開(kāi)發(fā)涉及諸多的社會(huì)因素。本題答案為A選項(xiàng)。
2.A
3.D
4.D
5.C
6.A解析:C語(yǔ)言的字符型常量中,允許用一種特殊形式的字符常量,就是以一個(gè)“\\”開(kāi)頭的字符。其中,“\\ddd”表示用ASCII碼(八進(jìn)制數(shù))表示一個(gè)字符,本題中的charc='\\72'H口表示占一個(gè)字符的變量c的ASCII碼值。
7.Ado-wlfile的功能是先執(zhí)行一次循環(huán)體,再判斷條件是否成立,當(dāng)x=-1時(shí),執(zhí)行do語(yǔ)句,x=x*x=1,接著執(zhí)行while后的表達(dá)式,其值為0,退出循環(huán),因此循環(huán)體只執(zhí)行了一次。
8.A
9.B解析:數(shù)據(jù)庫(kù)管理系統(tǒng)是數(shù)據(jù)庫(kù)系統(tǒng)的核心,是負(fù)責(zé)數(shù)據(jù)庫(kù)的建立、使用和維護(hù)的軟件。數(shù)據(jù)庫(kù)管理系統(tǒng)建立在操作系統(tǒng)之上,實(shí)施對(duì)數(shù)據(jù)庫(kù)的統(tǒng)一管理和控制。用戶(hù)使用的各種數(shù)據(jù)庫(kù)命令以及應(yīng)用程序的執(zhí)行,最終都必須通過(guò)數(shù)據(jù)庫(kù)管理系統(tǒng)。另外,數(shù)據(jù)庫(kù)管理系統(tǒng)還承擔(dān)著數(shù)據(jù)庫(kù)的安全保護(hù)工作,按照數(shù)據(jù)庫(kù)管理員所規(guī)定的要求,保證數(shù)據(jù)庫(kù)的完整性和安全性。
10.B解析:本題考核軟件工程中的需求分析環(huán)節(jié)。需求分析應(yīng)交付的主要文檔就是需求規(guī)格說(shuō)明書(shū)。
11.D
12.B
13.D解析:本題主要考查左移、右移對(duì)數(shù)據(jù)值的影響,左移n位相當(dāng)于乘以2的n次冪,右移n位相當(dāng)于除以2的n次冪。
14.D本題考查字符串比較函數(shù)strcmp(s1,s2),若s1>s2,則返回1;若s1=s2,則返回0;若s1<s2,則返回-1。字符串依次比較的是它們字符的ASCIl碼值。
15.C解析:sort函數(shù)的功能實(shí)際上是對(duì)數(shù)組中奇數(shù)位置上的數(shù)進(jìn)行從大到小排序。排序后的結(jié)果應(yīng)該為9,2,7,4,5,6,3,8,1,10。
16.A本題考查的是for循環(huán)與二維數(shù)組的定義和引用。當(dāng)定義二維數(shù)組的初始化列表只使用一重花括號(hào)時(shí),其中的每個(gè)值依次代表從第l行的第1個(gè)元素起,直到第l行滿(mǎn),接著代表第2行、第3行……的每一個(gè)元素。程序中的循環(huán)將循環(huán)3次,循環(huán)變量i的值分別是0、1、2,所以3次循環(huán)中輸出的數(shù)分別是:t[2一O][D]、t[2-1][1]、t[2~2]121,即t[2][0]、t[1][l]、t[0][2],所以最后輸出的結(jié)果為357。故應(yīng)該選擇A)。
17.A解析:作為一個(gè)算法,一般應(yīng)該具有下列4個(gè)特征:(1)可行性,即考慮到實(shí)際的條件能夠達(dá)到一個(gè)滿(mǎn)意的結(jié)果;(2)確定性,算法中的每一個(gè)步驟都必須是有明確定義的,(3)有窮性,一個(gè)算法必須在有限的時(shí)間內(nèi)做完;(4)擁有足夠的情報(bào)。
18.C
19.A
20.A題干中使用malloc函數(shù)分配了80個(gè)字節(jié)的內(nèi)存單元,void指針p指向該內(nèi)存單元。在C語(yǔ)言中,void*不能直接使用,必須利用強(qiáng)制類(lèi)型轉(zhuǎn)換將其轉(zhuǎn)成所需的類(lèi)型才能使用,選項(xiàng)A錯(cuò)誤。int類(lèi)型的元素占4個(gè)字節(jié),所以可以將p指向的內(nèi)存強(qiáng)制類(lèi)型轉(zhuǎn)換成具有20個(gè)int類(lèi)型的一維數(shù)組來(lái)使用,同理,也可以強(qiáng)制類(lèi)型轉(zhuǎn)換成10個(gè)double類(lèi)型的一維數(shù)組來(lái)使用,或強(qiáng)制類(lèi)型轉(zhuǎn)換成80個(gè)char類(lèi)型的一維數(shù)組來(lái)使用,選項(xiàng)B、C、D正確。故本題答案為A選項(xiàng)。
21.操作系統(tǒng)操作系統(tǒng)解析:數(shù)據(jù)庫(kù)管理系統(tǒng)是幫助用戶(hù)創(chuàng)建和管理數(shù)據(jù)庫(kù)的應(yīng)用程序的集合。因此,數(shù)據(jù)庫(kù)管理系統(tǒng)需要操作系統(tǒng)的支持,為用戶(hù)提供服務(wù)。
22.structaa*lhead*rchild;structaa*lhead,*rchild;解析:結(jié)構(gòu)體對(duì)鏈表的定義。
23.a=a+ba=a+b解析:a+=b與a=a+b等價(jià),作用是把變量a的值加b后再賦給變量a。
24.正確性測(cè)試正確性測(cè)試
25.ar=9ar=9ar=11ar=9ar=9ar=11解析:本題綜合考查了for循環(huán),switch語(yǔ)句及宏替換等幾個(gè)知識(shí)點(diǎn)。j=3時(shí),執(zhí)行PR(*(--p));輸出數(shù)組元素a[4]的值;j=2時(shí),執(zhí)行PR(*p++);取出p所指位置的元素a[4],然后p++;當(dāng)j=1時(shí),執(zhí)行PR(*p++);取得是數(shù)組元素a[6]的值11。
26.11解析:首先計(jì)算if語(yǔ)句后面的表達(dá)式,根據(jù)運(yùn)算符的優(yōu)先級(jí)可知,先算“a!=0”,該值為1,再把1賦值給p,結(jié)果為1(真),執(zhí)行其后的printf語(yǔ)句,輸出的值為1。
27.數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)
28.數(shù)據(jù)字典數(shù)據(jù)字典解析:數(shù)據(jù)字典的作用是對(duì)數(shù)據(jù)流圖中出現(xiàn)的披命名的圖形元素進(jìn)行確切解釋。通常數(shù)據(jù)字典包含的信心有名稱(chēng)、別名、何處使用/如何使用、內(nèi)容描述、補(bǔ)充信息等。
29.5656解析:本題中a,b,c,d足實(shí)參,x,y,cp,dp是形參。C語(yǔ)言規(guī)定,實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是“值傳遞”,即單向傳遞,只由實(shí)參傳給形參,而不能由形參傳回來(lái)給實(shí)參。在內(nèi)存中,實(shí)參單元與形參單元是不同的單元。在調(diào)用函數(shù)時(shí),給形參分配存儲(chǔ)單元,并將實(shí)參對(duì)應(yīng)的值傳遞給形參,調(diào)用結(jié)束后,形參單元被釋放,實(shí)參單元仍保留并維持原值。因此,程序的輸出結(jié)果是56。
30.對(duì)象對(duì)象解析:類(lèi)描述的是具有相似性質(zhì)的一組對(duì)象。例如,每本具體的書(shū)是一個(gè)對(duì)象,而這些具體的書(shū)都有共同的性質(zhì),它們都屬于更一般的概念“書(shū)”這一類(lèi)對(duì)象。一個(gè)具體對(duì)象稱(chēng)為類(lèi)的實(shí)例。
31.246
32.k[7]*kk[7]*k解析:scanf()函數(shù)有兩個(gè)參數(shù),第—個(gè)參數(shù)是格式控制部分(格式控制部分是字符串,主要由“%”號(hào)和格式字符組成)第二個(gè)參數(shù)是一地址列表(地址列表是由多個(gè)地址組成,可以是變量的地址,也可以是字符串的首地址)。而第一個(gè)空格處位于scanf()函數(shù)的第二個(gè)參數(shù)處,所以,第一個(gè)空應(yīng)該填地址k。printf()函數(shù)有兩個(gè)參數(shù),第一個(gè)參數(shù)是輸出格式字符串(輸出格式字符串是由控制輸出格式的字符和非格式字符組成的,通常是字符常量。非格式字符作為輸出數(shù)據(jù)的間隔,輸出時(shí)原樣輸出)第二個(gè)參數(shù)為一輸出表達(dá)式表(輸出表達(dá)式表是由若干個(gè)需要計(jì)算和輸出的表達(dá)式組成的,表達(dá)式之間用逗號(hào)分隔開(kāi))。而第二個(gè)空位于printf()函數(shù)的第二個(gè)參數(shù)處,所以應(yīng)該填*K。
33.時(shí)間時(shí)間解析:算法的復(fù)雜度主要指時(shí)間復(fù)雜度和空間復(fù)雜度。所謂算法的時(shí)間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量;算法的空間復(fù)雜度,一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。
34.邏輯邏輯解析:數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲(chǔ)空間中的存放形式稱(chēng)為數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)或物理結(jié)構(gòu)。
35.00解析:本題考查的是do厀hile循環(huán)。第一次執(zhí)行循環(huán)體,因?yàn)閗=1,r=1,n=20,所以k=1*20%10*1=0,n=20/10=2,r=2;第二次執(zhí)行循環(huán)體,k=0*2%10*2=0,n=10/10=1,r=3;第三次執(zhí)行循環(huán)體,k=0*1%10*3=0,n=1/10=0,r=4,所以k的值為0。
36.BB解析:因?yàn)閏是字符類(lèi)型變量,它只能接收一個(gè)字符,所以c=A,字符型變量在參與算術(shù)運(yùn)算的時(shí)候是用其相應(yīng)的ASCII碼參與運(yùn)算的,這樣++c得到字母B的ASCII碼,用putchar函數(shù)輸出是輸出其相應(yīng)的字符,所以是B。
37.PRICEintnumtotaltotalnum
38.p!=NULLp->nextp!=NULL,p->next解析:考查了單鏈表的相關(guān)知識(shí)。NULL的ASCII碼的值和'\\0'的ASCII碼的值相等,條件到NULL停止循環(huán)。把下一個(gè)節(jié)點(diǎn)的地址賦給p,這樣循環(huán),節(jié)點(diǎn)可以依次向后取值。
39.物理獨(dú)立性物理獨(dú)立性解析:數(shù)據(jù)的獨(dú)立性是指數(shù)據(jù)和應(yīng)用程序相互獨(dú)立,分為物理獨(dú)立性和邏輯獨(dú)立性。其中物理獨(dú)立性是指數(shù)據(jù)的物理結(jié)構(gòu)(包括存儲(chǔ)結(jié)構(gòu)、存取方式)改變時(shí),不需要修改應(yīng)用程序。而邏輯獨(dú)立性是指當(dāng)邏輯結(jié)構(gòu)改變時(shí),不需要修改應(yīng)用程序。
40.(y%2)==0(y%2)==0解析:因符合偶數(shù)的條件是對(duì)2取余為0,所以要描述y是偶數(shù)的表達(dá)式是(y%2)==0。
41.D解析:解此題要注意的問(wèn)題有兩個(gè):一是,二維數(shù)組在內(nèi)存中的存放形式是線(xiàn)性的,且是以行方式排列的。例如:a[3][4]在內(nèi)存中是以a[0][0],a[0][1],a[0][2],a[0][3],a[1][0],a[1][1],a[1][2],…的順序排列的。二是,數(shù)組的下標(biāo)范圍是從0開(kāi)始至上限減1為止的。例如:a[5]中5個(gè)元素的下標(biāo)范圍是0~4。所以,元素a[i][j]剛在m列的二維數(shù)組a中,其上面已經(jīng)有a[0][?]~a[i-1][?],i行元素,加上其左面的a[i][0]~a[i][j-1],j個(gè)元素,再加上自己所處的位置1就是該元素在數(shù)組中的位置值了。i行元素的個(gè)數(shù)是i*m,所以元素a[i][j]在數(shù)組中的位置為i*+j+1。得出結(jié)論后還應(yīng)該驗(yàn)證一下,當(dāng)i=0,j=0時(shí),a[0][0]所處的位置代入式子為0*m+0+1:1,符合題意。故正確答案為D。
42.A解析:表達(dá)式a&2的值為0,不必再計(jì)算表達(dá)式ch<'m',整個(gè)邏輯表達(dá)式的值為0。
43.B解析:該題考查函數(shù)的宏定義及三目運(yùn)算符。其中表達(dá)式10,MIN(i,j)利用宏展開(kāi)后為:10*<j?i:j,即100<15?10:15,其值為15,然后賦值給k。
44.B解析:全程變量是可以在子函數(shù)中對(duì)其值作改變,且它也可作為函數(shù)間的值傳遞。但當(dāng)函數(shù)或子函數(shù)中定義了與全程變量名稱(chēng)相同的局部變量,則全程變量將被屏蔽。
45.C解析:本題的考點(diǎn)是C語(yǔ)言結(jié)構(gòu)體的定義和自定義類(lèi)型typedef。對(duì)于選項(xiàng)A,首先用typedef將結(jié)構(gòu)體自定義為AA,再用AA定義結(jié)構(gòu)體變量td是正確的。對(duì)于選項(xiàng)B首先定義結(jié)構(gòu)體類(lèi)型aa,再用structaa定義結(jié)構(gòu)體變量td也是正確的。選項(xiàng)D直接用無(wú)名結(jié)構(gòu)體定義結(jié)構(gòu)體變量td也是正確的。而選項(xiàng)C中,首先用無(wú)名結(jié)構(gòu)體定義了結(jié)構(gòu)體變量aa,再用結(jié)構(gòu)體變量aa去定義結(jié)構(gòu)體變量td是完全錯(cuò)誤的。因此正確選項(xiàng)是C。
46.D解析:中序遍歷的遞歸算法定義:①遍歷左子樹(shù);②訪(fǎng)問(wèn)根結(jié)點(diǎn);③遍歷右子樹(shù)。前序遍歷的遞歸算法定義:①訪(fǎng)問(wèn)根結(jié)點(diǎn);②遍歷左子樹(shù);③遍歷右子樹(shù)。后序遍歷的遞歸算法定義:①遍歷左子樹(shù);②遍歷右子樹(shù);③訪(fǎng)問(wèn)根結(jié)點(diǎn)。根據(jù)前序遍歷的結(jié)果可知,a是根結(jié)點(diǎn)。由中序遍歷的結(jié)果dgbaechf可知,d、g、b是左子樹(shù)的結(jié)點(diǎn),e、c、h、f是右子樹(shù)的結(jié)點(diǎn)。再由前序遍歷的結(jié)果bdg可知,b是a左邊子樹(shù)的根,由cefh可知,c是a右邊子樹(shù)的根。再由中序遍歷的結(jié)果dgb可知,d、g是b左邊子樹(shù)的結(jié)點(diǎn),b右邊子樹(shù)無(wú)結(jié)點(diǎn)。再由前序遍歷結(jié)果dg可知,d為b左子樹(shù)的根,g是以d為根的子樹(shù)的右結(jié)點(diǎn)。至此,a的左子樹(shù)已完全弄清楚了。同樣的道理,可以弄清楚以c為根的子樹(shù)的結(jié)點(diǎn)位置。所以可知后序遍歷的結(jié)果是D。
47.A解析:設(shè)循環(huán)隊(duì)列的容量為m,如果rear>front,則循環(huán)隊(duì)列中的元素個(gè)數(shù)為rear-front;如果rear<front,則循環(huán)隊(duì)列中的元素個(gè)數(shù)為m+(rear-front)。根據(jù)題意,本題中,front=6,rear=14,即rear>front,因此,循環(huán)隊(duì)列中的元素個(gè)數(shù)為rear-front=14-6=8。本題的正確答案為8。
48.C解析:本題考查for循環(huán)。第一次循環(huán)前先判斷循環(huán)條件,此時(shí)i=0,j=1,i<j+1成立,循環(huán)第一次;第二次循環(huán)前先判斷循環(huán)條件,此時(shí)i=1,j=0,(j--是先使用j的值再減1),i<j+1不成立,結(jié)束循環(huán)。
49.C解析:表達(dá)式x*=y+8即x=x*(y+8),所以其值為3*(2+8)=30。
50.B
51.A解析:a就是數(shù)組a的首地址,而a+x是數(shù)組中第x個(gè)元素的地址,所以在四個(gè)選項(xiàng)中,選項(xiàng)B和C只能輸入—個(gè)數(shù)據(jù),選項(xiàng)D不能給a[0]輸入數(shù)據(jù),只有A可以完成給數(shù)組所有的元素輸入數(shù)據(jù)的任務(wù)。
52.C解析:本題考查數(shù)組名作為函數(shù)形參的函數(shù)調(diào)用問(wèn)題。數(shù)組名作函數(shù)形參是按地址傳遞,形參的改變可以傳回實(shí)參。sort函數(shù)的兩個(gè)形參中一個(gè)是數(shù)組名,sort函數(shù)的功能是對(duì)數(shù)組元素進(jìn)行由大到小的排序。主函數(shù)調(diào)用sort函數(shù)時(shí),實(shí)參為aa[3]元素的地址和整數(shù)5,即sort函數(shù)將對(duì)數(shù)組aa中的元素aa[3]、aa[4]、aa[5]、aa[6]、aa[7]5個(gè)元素的值進(jìn)行由大到小的排序,排序后aa[3]=8、aa[4]=7、aa[5]=6、aa[6]=5、aa[5]=4,而數(shù)組aa中其余元素的值不變,因此結(jié)果是C。
53.C解析:C語(yǔ)言中:strcpy(st1,st2);,其兩個(gè)參數(shù)均為字符指針或字符數(shù)組,選項(xiàng)C中的目的串指針str3沒(méi)有指向具體有效的存儲(chǔ)單元,故是錯(cuò)誤的調(diào)用。
54.B
55.D解析:在對(duì)二維數(shù)組元素賦初值時(shí),可以只對(duì)部分元素賦初值,未賦初值的元素自動(dòng)取0;C語(yǔ)言規(guī)定,對(duì)于二維數(shù)組,只可以省略第1個(gè)方括號(hào)中的常量表達(dá)式,而不能省略第2個(gè)方括號(hào)中的常量表達(dá)式;賦的初值不能多于事先定義好的數(shù)組元素個(gè)數(shù)。
在選項(xiàng)D)賦值表達(dá)式中,對(duì)每一維的元素賦初值應(yīng)用{},而不是()。
56.C解析:軟件開(kāi)發(fā)模型包括瀑布模型、快速原型法模型和螺旋模型。
57.C解析:本題考查do…while循環(huán)。①執(zhí)行printf語(yǔ)句,x=x-4=1,輸出1,判斷while循環(huán)的控制條件,--x=0,則(!(-x))非零,循環(huán)條件成立,執(zhí)行下一次循環(huán);②執(zhí)行printf語(yǔ)句,x=x-4=-4,輸出-4,判斷while循環(huán)的控制條件,--x=-5,則(!(--x))為零,循環(huán)條件不成立,結(jié)束循環(huán)。
58.B
59.D解析:在題目中,程序執(zhí)行到scanf()函數(shù)時(shí),會(huì)暫停等待用戶(hù)輸入4個(gè)字符,按題意輸入123<回車(chē)>后,字符1~3被分別輸入到c1~c3中,而c4會(huì)得到一個(gè)換行符'\\n'。然后執(zhí)行第1個(gè)getchar()函數(shù),由于前面的scanf()函數(shù)讀完了緩沖區(qū)中的所有字符,所以此時(shí)程序會(huì)又暫停等待用戶(hù)輸入,按題意輸入45678<回車(chē)>后,緩沖區(qū)第1個(gè)字符'4'被讀入并賦給c5,第2個(gè)getchar()函數(shù)會(huì)讀入緩沖區(qū)第2個(gè)字符'5'。所以最后依次輸出c1、c2、c5、c6的值后,屏幕上的結(jié)果是1245。故應(yīng)該選擇D。
60.D解析:main()函數(shù)可以帶參數(shù),并且參數(shù)只能有兩個(gè),第一個(gè)參數(shù)(argc)類(lèi)型為整型用來(lái)記下命令行的參數(shù)個(gè)數(shù),第二個(gè)參數(shù)(argv)為一個(gè)字符型指針數(shù)組,其各個(gè)元素用來(lái)記下命令行各參數(shù)字符串的首地址。本題執(zhí)行時(shí),argc的值為4,在循環(huán)中依次求出argv[1]、argv[2]和argv[3]指向的字符串('abcd'、'efg'和'10')的長(zhǎng)度,并把它們加到變量len中,得到len的值9。所以最后輸出的len值為9,所以4個(gè)選項(xiàng)中D正確。
61.A將a數(shù)組里元素賦值給b數(shù)組,直到數(shù)組a的末尾,所以選擇A)。
62.D
63.C
64.D在最壞情況下,快速排序、冒泡排序和直接插入排序需要的比較次數(shù)都是n(n一1)/2,堆排序需要比較的次數(shù)為nlog2n。
65.C
66.B此題考查除法運(yùn)算,根據(jù)先乘除后加減,有括號(hào)先算括號(hào)的原則,先計(jì)算x/y,即l2/8=1,所以z=0.9+1=1.9。但是Z是整型的,轉(zhuǎn)化一下取整除部分,結(jié)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 設(shè)計(jì)課題申報(bào)書(shū)怎么寫(xiě)好
- 吉林課題立項(xiàng)申報(bào)書(shū)
- 前端外包開(kāi)發(fā)合同范本
- 單位和職工合同范本
- 信托制物業(yè)合同范本
- 員工疾病免責(zé)合同范本
- 品牌定制家具合同范本
- 勞務(wù)合同范本約束條款規(guī)定
- 后期剪輯合同范本
- 加盟代理項(xiàng)目合同范本
- 2025年南昌理工學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)審定版
- 2025年廣西職業(yè)院校技能大賽高職組(商務(wù)數(shù)據(jù)分析賽項(xiàng))參考試題庫(kù)資料及答案
- 2025年黑龍江農(nóng)墾職業(yè)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)帶答案
- 四年級(jí)下冊(cè) 道德與法治 全冊(cè)教案
- 個(gè)人租房房屋合同范本
- MSA測(cè)量系統(tǒng)培訓(xùn)
- 冷庫(kù)安全培訓(xùn)
- 線(xiàn)上教育平臺(tái)教師教學(xué)行為規(guī)范與責(zé)任書(shū)
- 2025年內(nèi)蒙古法院系統(tǒng)招聘用制書(shū)記員2988人過(guò)渡高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- 中央2025年全國(guó)婦聯(lián)所屬在京事業(yè)單位招聘93人筆試歷年參考題庫(kù)附帶答案詳解
- 《環(huán)境污染對(duì)生態(tài)系統(tǒng)的影響》課件
評(píng)論
0/150
提交評(píng)論