




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(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ì)重點(diǎn)匯總測(cè)試卷(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.以下敘述中正確的是()。A.A.break語(yǔ)句只能用在循環(huán)體內(nèi)和switch’語(yǔ)句體內(nèi)
B.continue語(yǔ)句的作用是:使程序的執(zhí)行流程跳出包含它的所有循環(huán)
C.在循環(huán)體內(nèi)使用break語(yǔ)句和continue語(yǔ)句的作用相同
D.break語(yǔ)句只能用于switch語(yǔ)句體中
2.
A.A.2A3N4E5OB.1H213U4EC.1A2N3U4OD.1A2N3E4O
3.有以下程序:voidswap1(intC[]){intt;t=c[0];c[0]=C[1];c[1]=t;}voidswap2(intc0,intc1){intt;t=c0;c0=c1;c1=t;}main(){inta[2]={3,5},b[2]={3,5);swapl(a);swap2(b[0],b[1]);printf("%d%d%d%d\n",a[0],a[1],b[0],b[1]);}其輸出結(jié)果是
A.5353B.5335C.3535D.3553
4.if語(yǔ)句的基本形式是“if(表達(dá)式)語(yǔ)句”,以下關(guān)于“表達(dá)式”值的敘述中正確的是()。
A.必須是邏輯值B.必須是整數(shù)值C.必須是正數(shù)D.可以是任意合法的數(shù)值
5.在存儲(chǔ)數(shù)據(jù)時(shí),通常不僅要存儲(chǔ)各數(shù)據(jù)元素的值,而且還要存儲(chǔ)()。
A.數(shù)據(jù)的處理方法B.數(shù)據(jù)元素的類型C.數(shù)據(jù)元素之間的關(guān)系D.數(shù)據(jù)的存儲(chǔ)方法
6.一個(gè)無向連連通圖的生成樹是含有該連通圖的全部項(xiàng)點(diǎn)的_______。
A.極小連通子圖B.極小子圖C.極大連通子圖D.極大子圖
7.在數(shù)據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無關(guān)的是數(shù)據(jù)的()結(jié)構(gòu)。
A.邏輯B.存儲(chǔ)C.邏輯和存儲(chǔ)D.物理
8.下列選項(xiàng)不符合良好程序設(shè)計(jì)風(fēng)格的是()。
A.源程序要文檔化B.數(shù)據(jù)說明的次序要規(guī)范化C.避免濫用goto語(yǔ)句D.模塊設(shè)計(jì)原則是高耦合、高內(nèi)聚
9.十六進(jìn)制數(shù)FF.1轉(zhuǎn)換成十進(jìn)制數(shù)是()
A.255.0625B.255.125C.127.0625D.127.125
10.下列排序方法中,()方法的比較次數(shù)與記錄的初始排列狀態(tài)無關(guān)。
A.直接插入排序B.冒泡排序C.快速排序D.直接選擇排序
11.有下列程序:fun(intx,inty){staticintm=0,i=2;i+=m+1;m=i+x+y;returnm;}main(){intj=1,m=1,k;k=fun(j,m);printS(”%d,”,k);k=fun(j,m);printf(”%d\n”,k);)執(zhí)行后的輸出結(jié)果是()。A.5,5B.5,11C.11,11D.11,5
12.C語(yǔ)言提供的合法關(guān)鍵字是()
A.switchB.cherC.caseD.default
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.以下函數(shù)的時(shí)間復(fù)雜度和空間復(fù)雜度為()A.T(n)=O(2^n),S(n)=O(n)
B.T(n)=O(1),S(n)=O(1)
C.T(n)=O(2^n),S(n)=O(1)
D.T(n)=O(n),S(n)=O(n)
15.有以下程序:#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
16.下面的排序算法中初始數(shù)據(jù)集的排列順序?qū)λ惴ǖ男阅軣o影響的是()A.插入排序B.堆排序C.冒泡排序D.快速排序
17.棧和隊(duì)列的共同特點(diǎn)是()。
A.都是先進(jìn)先出B.都是先進(jìn)后出C.只允許在端點(diǎn)處插入和刪除元素D.沒有共同點(diǎn)
18.命令“DIRA:*.*/W”的功能是()
A.寬行顯示A盤當(dāng)前目錄的所有文件
B.寬行顯示A盤所有目錄的所有文件
C.寬行顯示A盤的所有目錄
D.顯示A盤中的文件名,每滿一屏后停頓一下
19.若串S=,software,其子串的數(shù)目是()。
A.8B.37C.36D.9
20.
二、2.填空題(20題)21.數(shù)據(jù)模型是數(shù)據(jù)庫(kù)系統(tǒng)中用于提供信息表示和操作手段的結(jié)構(gòu)形式。實(shí)際數(shù)據(jù)庫(kù)系統(tǒng)中所支持的數(shù)據(jù)模型主要有層次模型、網(wǎng)狀模型和【】3種。
22.以下程序的輸出結(jié)果是【】。
main()
{inta=0;
a+=(a=8);
printf("%d\n",A);
}
23.若運(yùn)行輸入:3<回車>,則以下程序的輸出結(jié)果是()。main(){inta,b;scanf("%d",&A);b=(a>=0)?a:-a;printf("b=%d",B);}
24.在關(guān)系模型中,把數(shù)據(jù)看成是二維表,每一個(gè)二維表稱為一個(gè)【】。
25.己定義charch='$';inti=l,j;,執(zhí)行j=!ch&&ii++以后,i的值為【】。
26.函數(shù)fun的返回值是【】。
fun(char*a,char*b)
{intnum=0,n=0;
while(*(a+num)!='\0')num++;
while(b[n]){*(a+num)=b[n];num++;n++;}
returnnum;
}
27.數(shù)據(jù)庫(kù)系統(tǒng)的主要特點(diǎn)為數(shù)據(jù)集成性、數(shù)據(jù)的高_(dá)_____和低冗余性、數(shù)據(jù)獨(dú)立性和數(shù)據(jù)統(tǒng)一管理和控制。
28.以下程序的輸出結(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);
}
29.算法的執(zhí)行過程中,所需要的存儲(chǔ)空間稱為算法的【】。
30.在結(jié)構(gòu)化分析方法中,用于描述系統(tǒng)中所用到的全部數(shù)據(jù)和文件的文檔稱為【】。
31.數(shù)據(jù)結(jié)構(gòu)分為線性結(jié)構(gòu)和非線性結(jié)構(gòu),帶鏈的隊(duì)列屬于[]。
32.【】是數(shù)據(jù)庫(kù)設(shè)計(jì)的核心。
33.軟件工程研究的內(nèi)容主要包括:【】技術(shù)和軟件工程管理。
34.閱讀下列程序,則程序的輸出結(jié)果為【】。
#include"stdio.h"
structty
{intdata;
charc;};
main()
{structtya={30,'x'};
fun(a);
printf("%d%c",a.data,a.c);}
fun(structtyb)
{b.data=20;
b.c='y';}
35.在關(guān)系模型中,把數(shù)據(jù)看成一個(gè)二維表,每一個(gè)二維表稱為一個(gè)______。
36.程序測(cè)試分為靜態(tài)分析和動(dòng)態(tài)測(cè)試。其中【】是指不執(zhí)行程序,而只是對(duì)程序文本進(jìn)行檢查,通過閱讀和討論,分析和發(fā)現(xiàn)程序中的錯(cuò)誤。
37.若有如下定義:
intx=2,y=3,z=4;
則表達(dá)式!(x=y)||x+z&&y-z的值是【】。
38.有如下程序段:
main(intargc,char*argv[])
{intn,i=0;
while(argv[1][i]!='\0')
{n=fun();i++;}
printf("%d\n",n*argc);
}
intfun()
{staticints=0;
s+=1;
returns;
}
假設(shè)程序經(jīng)編譯、連接后生成可執(zhí)行文件exam,exe,若鍵入如下命令行:
examl23<回車>
則運(yùn)行結(jié)果為【】。
39.為了便于對(duì)照檢查,測(cè)試用例應(yīng)由輸入數(shù)據(jù)和預(yù)期的【】?jī)刹糠纸M成。
40.表達(dá)式1/2*(int)3.7/(int)(2.4*(1.5+2.5))值的數(shù)據(jù)類型為______。
三、1.選擇題(20題)41.下列選項(xiàng)中不屬于結(jié)構(gòu)化程序設(shè)計(jì)方法的是()。
A.自頂向下B.逐步求精C.模塊化D.可復(fù)用
42.在C語(yǔ)言程序中,以下說法正確的是()。
A.函數(shù)的定義和函數(shù)的調(diào)用均不可以嵌套
B.函數(shù)的定義不可嵌套,但函數(shù)的調(diào)用可以嵌套
C.函數(shù)的定義可以嵌套,但函數(shù)的調(diào)用不可以嵌套
D.函數(shù)的定義和函數(shù)的調(diào)用均可以嵌套
43.以下數(shù)組定義中錯(cuò)誤的是______。
A.intx[][3]={0};
B.intx[2][3]={{1,2},{3,4},{5,6)};
C.intx[][3]={{1,2,3},{4,5,6}};
D.mtx[2][3]={1,2,3,4,5,6};
44.設(shè)計(jì)軟件結(jié)構(gòu)是在軟件生命周期的()。
A.軟件定義期B.軟件開發(fā)期C.軟件維護(hù)期D.以上三個(gè)都不是
45.下面函數(shù)的功能是char*fun(char*strl,char*str2){while((*strl)&&(*str2++=*strl++));returnstr2;}
A.求字符串的長(zhǎng)度
B.比較兩個(gè)字符串的大小
C.將字符串str1復(fù)制到字符串str2中
D.將字符串str1接續(xù)到字符串str2中
46.下列程序的執(zhí)行結(jié)果是()。#include<stdio.h>main(){inta,b,c;a=b=2;c=(a++)-1;printf("%d,%d",a,c);c+=-a+++(++b);printf("%d,%d",a,c);}
A.3,14,1B.3,14,2C.2,04,1D.2,14,1
47.有下列二叉樹,對(duì)此二叉樹中序遍歷的結(jié)果為()。
A.BDYEACFXZB.DYBEAFCZXC.ABCDEFXYZD.ABDYECFXZ
48.若函數(shù)中有定義語(yǔ)句:inta;,則()。
A.系統(tǒng)將自動(dòng)給a賦初值0B.這時(shí)a中的值是和隨機(jī)數(shù)C.系統(tǒng)將自動(dòng)給a賦初值-1D.這a中無任何值
49.設(shè)有下列二叉樹:
對(duì)此二叉樹先序遍歷的結(jié)果為
A.ABCDEFB.DBEAFCC.ABDECPD.DEBFCA
50.下面是對(duì)宏定義的描述,不正確的是______。
A.宏不存在類型問題,宏名無類型,它的參數(shù)也無類型
B.宏替換不占用運(yùn)行時(shí)間
C.宏替換時(shí)先求出實(shí)參表達(dá)式的值,然后代入形參運(yùn)算求值
D.宏替換只不過是字符替代而已
51.在數(shù)據(jù)庫(kù)設(shè)計(jì)中,將E-R圖轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型的過程屬于()。A.需求分析階段B.概念設(shè)計(jì)階段C.邏輯設(shè)計(jì)階段D.物理設(shè)計(jì)階段
52.若變量已正確定義,要求程序段完成求5!的計(jì)算,不能完成此操作的程序段是()。
A.for(i=1,p=1;i<=5;i++)p*=i;
B.for(i=1;i<=5;i++){p=1;p*=i;}
C.i=1;p=1;while(i<=5){p*=i;i++;}
D.i=1;p=1;do{p*=i;i++;}while(i<=5);
53.已知大寫字母A的ASCII碼值是65,小寫字母a的ASCII碼是97,則用八進(jìn)制表示的字符常量'\101'是A.字符AB.字符aC.字符eD.非法的常量
54.若變量a是int類型,并執(zhí)行了語(yǔ)句:a='A'+1.6;,則正確的敘述是
A.a的值是字符CB.a的值是浮點(diǎn)型C.不允許字符型和浮點(diǎn)型相加D.a的值是字符‘A’的ASCII值加上1
55.有以下程序:#include<stdio.h>main(){intm=12,n=34;printf("%d%d",m++,++n);printf("%d%d\n",n++,++m);}程序運(yùn)行后的輸出結(jié)果是()。
A.12353514B.12353513C.12343514D.12343513
56.請(qǐng)選出以下程序的輸出結(jié)果_______。#include<stdio.h>sub(int*s,inty){staticintt=3,y=s[t];t-;}main(){inta[]={1,2,3,4},i,x=0;for(i=0;i<4;i++){sub(a,x);printf("%d",x);}printf("\n");}
A.1234B.4321C.0D.4444
57.己知字母A的ASCII碼值是65,字母a的ASCII碼值是97,以下程序_________。main(){chara='A';intb=20;printf("%d,%o",(a=a+a,a+b,B),a+'a'-'A',b);}
A.表達(dá)式非法,輸出零或不確定值
B.因輸出項(xiàng)過多,無輸出或輸出不確定值
C.輸出結(jié)果20,141
D.輸出結(jié)果為20,141,20
58.下列數(shù)據(jù)模型中,具有堅(jiān)實(shí)理論基礎(chǔ)的是()。
A.層次模型B.網(wǎng)狀模型C.關(guān)系模型D.以上3個(gè)都是
59.設(shè)有如下程序:#include'string.h"main(){staticchars1[20],s2[20];scanf("%s",s1);scanf("%s",s2);if(strcmp(s1,s2))printf("@");elseprintf("$");printf("%d\n",strlen(strcat(s1,s2)));}如果從鍵盤上輸入name1<回車>name2<回車>,則程序運(yùn)行后的輸出結(jié)果是()。
A.$9B.@11C.$10D.@10
60.有以下程序:fun(intx,inty){staticintm=0,i=2;i+=m+1;m=i+x+y;returnm;}main(){intj=1,m=1,k;k=fun(j,m);printf("%d,"k);k=fun(j,m);printf("%d\n",k);}執(zhí)行后的輸出結(jié)果是()。
A.5,5B.5,11C.11,11D.11,5
四、選擇題(20題)61.在HTML頁(yè)面中哪些部分能夠插入JavaScript?
A.<body>部分
B.<head>部分
C.<body>部分和<head>部分均可
D.<title>部分
62.下面程序由兩個(gè)源程序文件t4.h和t4.c組成,程序編譯運(yùn)行的結(jié)果是()。
t4.h的源程序?yàn)椋?/p>
A.920B.1611C.911D.1610
63.
有以下程序
#include<stdi0.h>
main
{FILE*fp;inta[0]一{1,2,3,0,0},i;
fp=fopen("d2.dat,"wb");
fwrite(a,sizeof(int),5,fp);
fwrite(a,sizeof(int),5,fp);
fclose(fp);
fp=fopen("d2.dat","rb");
fread(a.sizeof(int),10,fp);
fclose(fp);
for(i=0;i<10;i++)printft("%d",a[i]);
}
程序的運(yùn)行結(jié)果是()。
A.1,2,3,0,0,o,0,0,0,0,
B.1,2,3,1,2,3,0,0,0,0,
C.123,0,0,0,0,123,0,0,0,0,
D.1,2,3,0,0,1,2,3,0,0,
64.
65.若有定義語(yǔ)句:
66.
67.若有定義“doublea;”,則正確的輸入語(yǔ)句是()。
A.seaM("%1f",a);
B.scanf("%f",&a);
C.scanf("%1f",&a)
D.scanf("%1e",&a);
68.
69.以下數(shù)據(jù)結(jié)構(gòu)中不屬于線性數(shù)據(jù)結(jié)構(gòu)的是______。
A.隊(duì)列B.線性表C.二叉樹D.棧
70.
71.以下選項(xiàng)中值為1的表達(dá)式是()。
A.
B.
C.
D.
72.有以下程序:
#include<stdio.h>
main()
{FILE*fp;inti,a[6]={1,2,3,4,5,6};
fp=fopen("d2.dat","w+");
for=(i=o;i<6;,i++)fpintf(fp,"%d\n",a[i]);
rewind(fp);
for(i=0;i%6;i++)fscanf(fp,"%d",&a[5-i]);
fclose(fp);
for(i=0;i%6;i++)printf("%d,",a[i]);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.4,5,6,1,2,3,
B.1,2,3,3,2,1,
C.1,2,3,4,5,6,
D.6,5,4,3,2,1,
73.若有定義語(yǔ)句:“charsE10]="1234567\0\0";”,則strlen(s)的值是()。A.A.7B.8C.9D.10
74.已定義以下函數(shù):
fun(int*p)
{return&p;}
該函數(shù)的返回值是()。
A.不確定的值
B.形參p中存放的值
C.形參p所指存儲(chǔ)單元中的值
D.形參p的地址值
75.有以下程序程序運(yùn)行后的輸出結(jié)果是()。A.2B.0C.3D.5
76.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。.
A.3,3B.1,1C.2,3D.1,2
77.
78.若有以下程序段,w和k都是整型變量。
w=k;
LB:if(w==0)gotoLE;
w--;
printf("*");
gotoLB;
LE:
M
則不能與上面程序段等價(jià)的循環(huán)語(yǔ)句是
A.for(w=k;w!=0;w--)printf("*");
B.w=k;<CR>while(w--!=0)printf("*");w++;
C.w=k;<CR>do{w--;printf("*");}while(w!=0);
D.for(w=k;w;--w)printf("*");
79.已知函數(shù)fread的調(diào)用形式為“fread(buffer,size,count,fp);”,其中buffer代表的是()。
A.存放讀入數(shù)據(jù)項(xiàng)的存儲(chǔ)區(qū)
B.一個(gè)指向所讀文件的文件指針
C.一個(gè)指針,是指向輸入數(shù)據(jù)存放在內(nèi)存中的起始地址
D.一個(gè)整型變量,代表要讀入的數(shù)據(jù)項(xiàng)總數(shù)
80.以下不能正確表示代數(shù)式4cd/ab的C語(yǔ)言表達(dá)式縣().
A.4*c*d/a/bB.c*d/a/b*4C.c/a/b*d*4D.4*c*d/a*b
五、程序改錯(cuò)題(1題)81.下列給定的程序中,函數(shù)proc()的功能是:用選擇法對(duì)數(shù)組中的n個(gè)元素按從大到小的順序進(jìn)行排序。請(qǐng)修改程序中的錯(cuò)誤,使它能得出正確的結(jié)果。注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。試題程序:
六、程序設(shè)計(jì)題(1題)82.使用VC++2010打開考生文件夾下prog1中的解決方案。此解決方案的項(xiàng)目中包含一個(gè)源程序文件prog1.c。在此程序中,請(qǐng)編寫函數(shù)fun(),其功能是將M行N列的二維數(shù)組中的數(shù)據(jù),按列的順序依次存放到一維數(shù)組中,將一維數(shù)組中數(shù)據(jù)的個(gè)數(shù)存放在形參n所指的存儲(chǔ)單元中。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)main()和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫的若干語(yǔ)句。試題程序:#include<stdio.h>voidfun(int(*s)[10],int*b,int*n,intmm,intnn){}main(){intw[10][10]={{33,33,33,33},{44,44,44,44},{55,55,55,55}},i,j;inta[100]={0},n=0;printf(“Thematrix:\n”);for(i=0;i<3;i++){for(j=0;j<4;j++)printf(“%3d”,w[i][j]);printf(“\n”);}fun(w,a,&n,3,4);printf(“TheAarray:\n”);for(i=0;i<n;i++)<p=""></n;i++)<>printf(“%3d”,a[i]);}
參考答案
1.A本題主要考查的知識(shí)點(diǎn)是:break和IContinue語(yǔ)句。break語(yǔ)句可以用于swhitCh或循環(huán)體內(nèi),作用是跳/出switCh或循環(huán)體。Continue語(yǔ)句只能用于循環(huán)體內(nèi),作用是結(jié)束當(dāng)前循環(huán),進(jìn)入下次循環(huán)。故本題中只有選項(xiàng)A)是正確的。
2.A本題主要考查結(jié)構(gòu)體數(shù)組。x[i]num是結(jié)構(gòu)體x[i]中的num成員,x[1].name[2]是結(jié)構(gòu)體x[i1中1"lame成員的第3個(gè)元素。第一次循環(huán),i-1,輸出x[1].num,x[1].name[2]的值,即2A;第二次循環(huán),i=2,輸出x[2].num,x[2].name[2]的值,即3N;第三次循環(huán),i=3,輸出x[3】.num,x[3].name[2]的值,即4E;第四次循環(huán),i=4,輸出x[4].num,x[4].name[2]的值,即50。
3.B解析:本題中函數(shù)swapl()是傳遞的地址。所以對(duì)該形參c的改變將影響實(shí)參,分析可知該函數(shù)的作用,是使數(shù)組c的第一個(gè)元素和第二個(gè)元素的值互換。主函數(shù)中調(diào)用該函數(shù)將a作為實(shí)參傳遞給形參c,故執(zhí)行該函數(shù)后a的第一個(gè)元素和第二個(gè)元素的值將交換。分別為5和3。函數(shù)swap2()是值傳遞的,所以該函數(shù)執(zhí)行后對(duì)數(shù)組b將沒有任何改變,此時(shí)該數(shù)組的第一個(gè)和第二個(gè)元素依然為3和5,因此最后的輸出為5、3、3和5,所以,4個(gè)選項(xiàng)中選項(xiàng)B符合題意。
4.Dif語(yǔ)句中的表達(dá)式可以是任意合法的數(shù)值,如常量、變量表達(dá)式。故本題答案為D選項(xiàng)。
5.C
6.A
7.A
8.D在程序設(shè)計(jì)中,對(duì)于軟件設(shè)計(jì)中的模塊設(shè)計(jì)要保證高內(nèi)聚和低耦合,源程序要有文檔說明,同時(shí)對(duì)程序中數(shù)據(jù)的說明要規(guī)范化。而goto語(yǔ)句破壞程序的結(jié)構(gòu),要盡量避免使用。所以選項(xiàng)D不正確。
9.A
10.D
11.B子函數(shù)fun(intx,inty),將變量m和i聲明為局部靜態(tài)變量,因此第l次調(diào)用主函數(shù)后,局部靜態(tài)變量m和i的值為5和3,第l次函數(shù)調(diào)用結(jié)束時(shí),它們的值不釋放保持不變,所以第2次調(diào)用時(shí),局部靜態(tài)變量m和i的初始值分別為5和3,即在執(zhí)行“i+=m+1”時(shí),i的值為9,因此最終m的值為11。
12.C
13.Afilecopy函數(shù)每次從fin文件指針調(diào)用getc函數(shù)讀取一個(gè)字符存放到ch中,再通過while循環(huán)調(diào)用putc函數(shù)將ch寫入fout,直到fin指向文件尾部為止。所以while的循環(huán)條件是判斷fin是否到文件尾部。這里使用feof函數(shù)判斷:feof返回值為真時(shí),表示fin指向了文件尾部,否則表示fin未到文件尾部。所以while循環(huán)條件為!feof(fin)。故本題答案為A選項(xiàng)。
14.A
15.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。
16.B
17.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),沒有這種耦合方式。
18.A
19.B
20.A
21.關(guān)系模型關(guān)系模型
22.1616解析:在程序中首先將8賦值給變量a,然后在進(jìn)行復(fù)合賦值運(yùn)算。即a=a+a=8+8=16,所以該空格處應(yīng)該填16。
23.b=3b=3解析:條件表達(dá)式的基本格式為:“表達(dá)式1?表達(dá)式2:表達(dá)式3”;其功能是:表達(dá)式1的值若非0,則計(jì)算表達(dá)式2的值,且為最終結(jié)果;若表達(dá)式1的值為0,則計(jì)算表達(dá)式3的值,且為最終結(jié)果。因?yàn)閍=3,則a>=0成立,所以b=a=3。
24.關(guān)系關(guān)系解析:在數(shù)據(jù)庫(kù)中,一個(gè)表就是一個(gè)關(guān)系。一個(gè)關(guān)系的邏輯結(jié)構(gòu)就是一張二維表。
25.11解析:本題中的ch是一個(gè)字符變量,其初始值為'$'(非0值即為真),所以!ch的結(jié)果為假,此時(shí)&&右邊的i++被“短路”,即不會(huì)被計(jì)算。由此可見,i的值不會(huì)改變,故本題應(yīng)該填1。
26.字符串a(chǎn)和b的長(zhǎng)度之和字符串a(chǎn)和b的長(zhǎng)度之和解析:本題首先通過第一個(gè)while循環(huán)計(jì)算字符串a(chǎn)的長(zhǎng)度,再通過第二個(gè)循環(huán),將字符串a(chǎn)和b相連,最后返回連接后的總長(zhǎng)度。
27.共享性共享性解析:數(shù)據(jù)庫(kù)系統(tǒng)中的數(shù)據(jù)能被不同的應(yīng)用程序使用,實(shí)現(xiàn)了數(shù)據(jù)的高度共享,從而降低了數(shù)據(jù)的冗余,這也是數(shù)據(jù)庫(kù)的主要目的。
28.3535解析:函數(shù)swap(int*a,int*b)的功能是實(shí)現(xiàn)*a和*b中兩個(gè)數(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。
29.空間復(fù)雜度空間復(fù)雜度解析:算法執(zhí)行時(shí)所需要的存儲(chǔ)空間,稱為算法的空間復(fù)雜度。
30.數(shù)據(jù)字典數(shù)據(jù)字典解析:在結(jié)構(gòu)化分析方法中,用于描述系統(tǒng)中所用到的全部數(shù)據(jù)和文件的文檔稱為數(shù)據(jù)字典。
31.線性結(jié)構(gòu)線性結(jié)構(gòu)解析:與棧類似,隊(duì)列也是線性表,也町以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。
32.數(shù)據(jù)模型數(shù)據(jù)模型
33.軟件開發(fā)
34.30x30x解析:本題的參數(shù)傳遞屬于值傳遞,所以函數(shù)內(nèi)不能改變調(diào)用函數(shù)中的數(shù)據(jù)。
35.關(guān)系關(guān)系解析:關(guān)系模型用;維表表示,則每個(gè);維表代表一種關(guān)系。
36.靜態(tài)分析靜態(tài)分析解析:程序測(cè)試分為靜態(tài)分析和動(dòng)態(tài)測(cè)試。其中,靜態(tài)分析是指不執(zhí)行程序,而只是對(duì)程序文本進(jìn)行檢查,通過閱讀和討論,分析和發(fā)現(xiàn)程序中的錯(cuò)誤。
37.11解析:運(yùn)算符的優(yōu)先級(jí)次序由高到底是!,算術(shù)運(yùn)算符,&&,||。先運(yùn)算!(x=y),由于x=3非零,則表達(dá)式!(x=y)的值為0。再運(yùn)算x+z,x+z=3+4=7,非零則運(yùn)算y-z,y-z=3-4=-1,非零則表達(dá)式x+z&&y-z的值為1。0||1=0,則表達(dá)式!(x=y)||x+z&&y-z的值是1。
38.66解析:本題中命令行輸入2個(gè)符號(hào)串,所以argc=2,argv[0]指向符號(hào)串'exam',argv[1]指向符號(hào)串'123',while循環(huán)的作用是計(jì)算argv[1]所指向的字符串的長(zhǎng)度,執(zhí)行完while循環(huán)后n=3,所以n*argc=3×2=6。
39.輸出結(jié)果輸出結(jié)果解析:注意:測(cè)試的基本方法和步驟。
40.整型整型解析:上面的表達(dá)式中,通過強(qiáng)制類型轉(zhuǎn)換把最后參與運(yùn)算的數(shù)據(jù)都轉(zhuǎn)換成了int型,所以最后得到的結(jié)果也是int類型。
41.D解析:20世紀(jì)70年代以來,提出了許多軟件設(shè)計(jì)方法,主要有①逐步求精:對(duì)復(fù)雜的問題,應(yīng)設(shè)計(jì)一些子目標(biāo)作過渡,逐步細(xì)化;②自頂向下:程序設(shè)計(jì)時(shí)應(yīng)先考慮總體,后考慮細(xì)節(jié);先考慮全局目標(biāo),后考慮局部目標(biāo)。不要一開始就過多追求眾多的細(xì)節(jié),先從最上層總目標(biāo)開始設(shè)計(jì),逐步使問題具體化;⑧模塊化:一個(gè)復(fù)雜問題,肯定是由若干稍簡(jiǎn)單的問題構(gòu)成。模塊化是把程序要解決的總目標(biāo)分解為分目標(biāo),再進(jìn)一步分解為具體的小目標(biāo),把每個(gè)小目標(biāo)稱為一個(gè)模塊,而可復(fù)用是面向?qū)ο蟪绦蛟O(shè)計(jì)的一個(gè)優(yōu)點(diǎn)。
42.B解析:本題考查函數(shù)調(diào)用的基本概念。因?yàn)楹瘮?shù)的結(jié)果是一個(gè)未知量,而函數(shù)定義時(shí)不能使用未知量,所以函數(shù)定義不可以嵌套,但是函數(shù)調(diào)用可以嵌套。
43.B解析:二維數(shù)組賦初值時(shí),第一個(gè)維數(shù)即行數(shù)可以省略,但是列數(shù)不能省略。因此選項(xiàng)A、C正確。選項(xiàng)D是按數(shù)據(jù)在二維數(shù)組中的順序初始化。在選項(xiàng)B中,列維數(shù)的初始化格式跟定義的維數(shù)不一致,為錯(cuò)誤選項(xiàng)。
44.B解析:設(shè)計(jì)軟件結(jié)構(gòu)是在軟件概要設(shè)計(jì)階段進(jìn)行的,而概要設(shè)計(jì)屬于軟件開發(fā)期。
45.C解析:while語(yǔ)句的一般形式為:while(表達(dá)式)語(yǔ)句;其中表達(dá)式是循環(huán)條件,語(yǔ)句為循環(huán)體,while語(yǔ)句的語(yǔ)義是:計(jì)算表達(dá)式的值,當(dāng)值為真(非0)時(shí),執(zhí)行循環(huán)體語(yǔ)句。本題中邏輯與符號(hào)連接的表達(dá)式值為真,*str2++=*strl++語(yǔ)句是將strl的內(nèi)容逐個(gè)復(fù)制到str2字符串。
46.A解析:本題主要考查自加運(yùn)算符(++、--)的使用。①前綴變量“++i、--i”,在使用i之前,先使i的值加1或者減1,再使用此時(shí)的表達(dá)式的值參與運(yùn)算;②后綴變量“i++、i--”,先使用此時(shí)的表達(dá)式的值參與運(yùn)算,在使用i之后,再使i的值加1或者減1。本題中計(jì)算表達(dá)式c=(a++)-1時(shí)先使用a的值進(jìn)行計(jì)算,結(jié)果為c=2-1=1,然后將a的值加1,即執(zhí)行完此語(yǔ)句后a的值是3;表達(dá)式c+=-a+++(++b)等價(jià)于c=c+(-a++)+(++b),c=1+(-3)+3=1,此時(shí)a=4,b=3。
47.B對(duì)二叉樹的中序遍歷是指:首先遍歷左子樹,然后訪問根結(jié)點(diǎn),最后遍歷右子樹。在遍歷左、右子樹時(shí),注意依舊按照“左子樹一根結(jié)點(diǎn)一右子樹”的順序。本題的遍歷順序是這樣的:①首先訪問左予樹:BDEY;②在左子樹BDEY中,也按中序遍歷,先訪問左子樹DY;在左子樹DY中,也按中序遍歷,先訪問左子樹,左子樹沒有,則訪問根結(jié)點(diǎn)D,然后訪問右子樹Y;③接著訪問根B,再訪問右子樹E;④訪問左子樹BDEY后,接著訪問根結(jié)點(diǎn)A,接著訪問右子樹CFXZ;⑤右子樹CFXZ的訪問順序同理可得:FCZX。
48.B本題考查變量賦值基本概念。在聲明一個(gè)變量后,如果未顯式的對(duì)其進(jìn)行賦值,則它的值是一個(gè)隨機(jī)值。
49.C解析:二叉樹的遍歷分為先序,中序、后序三種不同方式.本題要求先序遍歷,其遍歷順序應(yīng)該為:訪問根結(jié)點(diǎn)->,先序遍歷左子樹->先序遍歷右子樹。按照定義,先序遍歷序列是ABDECF,故答案為C。
50.C解析:宏替換實(shí)質(zhì)上就是字符替代,它不可能進(jìn)行計(jì)算,故C錯(cuò)誤。帶參數(shù)的宏與函數(shù)相比,宏在程序編譯之前已經(jīng)將代碼替換到程序內(nèi),執(zhí)行時(shí)不會(huì)產(chǎn)生類似于函數(shù)調(diào)用的問題,可以說不占用運(yùn)行時(shí)間。
51.CE-R圖轉(zhuǎn)換成關(guān)系模型數(shù)據(jù)則是把圖形分析出來的聯(lián)系反映到數(shù)據(jù)庫(kù)中,即設(shè)計(jì)出表,所以屬于邏輯設(shè)計(jì)階段。
52.B解析:選項(xiàng)B中for循環(huán)了5次,而每次循環(huán)的時(shí)候,都將p的值重新賦值為1后,再乘以當(dāng)前數(shù)字i,所以最后的結(jié)果為5,顯然不是5!的值,同樣的分析可知選項(xiàng)A、選項(xiàng)C和選項(xiàng)D計(jì)算的都是5!。所以,4個(gè)選項(xiàng)中選項(xiàng)B符合題意。
53.A本題考查的知識(shí)點(diǎn)是轉(zhuǎn)義字符。題目中的關(guān)鍵是八進(jìn)制101的十進(jìn)制是多少.八進(jìn)制的101轉(zhuǎn)換為十進(jìn)制為65,也就是字符A的ASCII。
54.D解析:本題考核的知識(shí)點(diǎn)是不同變量的類型的混合運(yùn)算。在C語(yǔ)言中規(guī)定允許不同類型的量進(jìn)行運(yùn)算,但在運(yùn)算時(shí)需轉(zhuǎn)換成高級(jí)的類型進(jìn)行運(yùn)算。在表達(dá)式中有字符型和實(shí)型參加運(yùn)算時(shí),統(tǒng)一轉(zhuǎn)換為實(shí)型再運(yùn)算,當(dāng)運(yùn)算結(jié)果存入變量時(shí)再轉(zhuǎn)換為該變量的類型。所以,4個(gè)選項(xiàng)中D為所選。
55.A解析:程序執(zhí)行printf('%d%d',m++,++n);后,輸出的是m和n+1的值1235,然后m+1=13,再執(zhí)行printf('%d%d\\n',n++,++m);輸出n和m+1的值3514,之后n+1=36。這里要注意的是m++和++m的區(qū)別:m++是先輸出m的值,再執(zhí)行m++;++m是先執(zhí)行++m,再輸出m的值。
56.C解析:x作為函數(shù)sub()的實(shí)參時(shí),函數(shù)對(duì)x值的改變沒有返回主函數(shù),并不能使得x的值變化,所以在打印時(shí),x的值是始終不變的,即為0。
57.C解析:本題中首先輸出逗號(hào)表達(dá)式“a=a+a,a+b,b”的值,即20。然后以八進(jìn)制的形式輸出a+'a'-'A',的值為97對(duì)應(yīng)的八進(jìn)制數(shù)141,由于最后一個(gè)表達(dá)式b沒有對(duì)應(yīng)輸出格式的輸出項(xiàng)表列就不會(huì)輸出。
58.C在數(shù)據(jù)庫(kù)設(shè)計(jì)中,目前常用的數(shù)據(jù)模型主要有三種,分別是層次模型、網(wǎng)狀模型和關(guān)系模型。
層次模型是數(shù)據(jù)庫(kù)系統(tǒng)中最早出現(xiàn)的數(shù)據(jù)模型。我們通常把滿足以下兩個(gè)條件的數(shù)據(jù)模型稱為層次模型。
(1)有且僅有一個(gè)結(jié)點(diǎn)無雙親,這個(gè)結(jié)點(diǎn)稱為根結(jié)點(diǎn)。
(2)其他結(jié)點(diǎn)有且僅有一個(gè)雙親。
層次模型用樹形結(jié)構(gòu)來表示各實(shí)體與實(shí)體間的聯(lián)系。實(shí)體是數(shù)據(jù)庫(kù)中數(shù)據(jù)描述的對(duì)象,可以是一個(gè)人、一種商品等。在層次模型中,每個(gè)結(jié)點(diǎn)表示一個(gè)記錄類型,記錄之間的聯(lián)系用結(jié)點(diǎn)之間的連線表示,這種聯(lián)系是父子之間一對(duì)多的聯(lián)系。記錄就是描述實(shí)體的相關(guān)數(shù)據(jù)。
如果取消層次模型中的兩個(gè)限制,即允許一個(gè)以上的結(jié)點(diǎn)無雙親,則每一個(gè)結(jié)點(diǎn)可以有多個(gè)父結(jié)點(diǎn),便形成了網(wǎng)狀。我們把網(wǎng)狀表示實(shí)體之間聯(lián)系的模型稱為網(wǎng)狀模型。
關(guān)系模型用表格形式表示實(shí)體類型及其實(shí)體間的聯(lián)系。關(guān)系模型是目前最重要的一種模型,它是建立在嚴(yán)格的數(shù)學(xué)概念的基礎(chǔ)上的,具有最堅(jiān)實(shí)的理論基礎(chǔ)。關(guān)系模型的基本數(shù)據(jù)結(jié)構(gòu)是二維表,每一張二維表稱為一個(gè)關(guān)系。
59.D解析:本題首先定義了兩個(gè)字符數(shù)組,然后從鍵盤讀入兩個(gè)字符串'name1'和'name2'分別賦給它們,接下來使用strcmp()函數(shù)比較兩個(gè)字符串是否相等,若不相等就輸出一個(gè)‘@’字符,否則輸出一個(gè)‘$’字符,所以本題先輸出一個(gè)‘@’字符。最后使用strcat()函數(shù)將兩個(gè)字符串連成一個(gè),然后使用strlen()函數(shù)求連接后的字符串長(zhǎng)度,所以接下來又輸出一個(gè)10。故本題的正確答案為D。
60.B解析:本題的fun()函數(shù)中定義的變量m和i是靜態(tài)局部變量,第1次調(diào)用fun()函數(shù)時(shí)m=0、i=2,執(zhí)行i+=m+1后,i的值變?yōu)?,再執(zhí)行m=i+x+y后,m的值變?yōu)?,所以第1次輸出的整數(shù)是5。第2次調(diào)用fun()函數(shù)時(shí)m=5、i=3,執(zhí)行i+=m+1,i變?yōu)?,再執(zhí)行m=i+x+y,m變?yōu)?1,所以第2次輸出的整數(shù)是11。故本題應(yīng)該選擇B。
61.C
62.B
63.D
\n本題程序首先用函數(shù)fopen以“wb”的方式開打文件“d2.dat”,然后調(diào)用兩次fwrite函數(shù)將數(shù)組a的5個(gè)元素,依次輸出到文件fp中,共10個(gè)字節(jié),關(guān)閉文件。再次打開文件,使用文件指針指向文件的開頭,調(diào)用head函數(shù)從文件印中讀取這10個(gè)字節(jié)的數(shù)據(jù)到數(shù)組a中。型數(shù)組bb中,因此,【2】處填“str[i]-0”;由函數(shù)proc可知,變量n中存放整型數(shù)組bb中的元素個(gè)數(shù),最后要返回到主函數(shù)當(dāng)中,因此,【3】處填“n”。\n
64.C
65.Ab=4不能作為左值,所以本題答案為A)。
66.A
67.D本題考查scanf函數(shù)的調(diào)用形式:scanf(格式字符串,輸入項(xiàng)地址表)。題中定義變量a為雙精度型變量,雙精度變量的格式符為“l(fā)e”;變量的地址用取地址符“&”加變量名表示,所以選項(xiàng)D正確。
68.C
69.C解析:線性表、棧和隊(duì)列所表達(dá)和處理的數(shù)據(jù)以線性結(jié)構(gòu)為組
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 信息技術(shù)必修一《數(shù)據(jù)與計(jì)算》第二章第二節(jié)《程序設(shè)計(jì)語(yǔ)言基本知識(shí)》教學(xué)設(shè)計(jì)
- 定西師范高等專科學(xué)?!渡茖W(xué)基礎(chǔ)二:細(xì)胞生物學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 沈陽(yáng)職業(yè)技術(shù)學(xué)院《中醫(yī)藥文化與養(yǎng)生》2023-2024學(xué)年第二學(xué)期期末試卷
- 駐馬店職業(yè)技術(shù)學(xué)院《寫意畫》2023-2024學(xué)年第二學(xué)期期末試卷
- 阜陽(yáng)幼兒師范高等??茖W(xué)校《電子線路CAD技術(shù)B》2023-2024學(xué)年第二學(xué)期期末試卷
- Unit 3 Amazing animals PartA (教學(xué)設(shè)計(jì))-2024-2025學(xué)年人教PEP版(2024)英語(yǔ)三年級(jí)上冊(cè)
- 鹽城師范學(xué)院《現(xiàn)代材料分析技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 廣東云浮中醫(yī)藥職業(yè)學(xué)院《民俗學(xué)與民間文學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 鋼軌購(gòu)銷合同范本
- 山西大同大學(xué)《三維機(jī)械CAD實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 【跨境電商零售進(jìn)口稅收征管對(duì)策及建議16000字(論文)】
- DZ∕T 0332-2020 碳酸鹽巖油氣藏縫洞體雕刻法資源儲(chǔ)量估算規(guī)范(正式版)
- 心血管介入護(hù)士進(jìn)修匯報(bào)
- 施工組織設(shè)計(jì)內(nèi)部審批表
- 《企業(yè)的可持續(xù)發(fā)展》課件
- 零至三歲兒童及老年人中醫(yī)保健指導(dǎo)專業(yè)知識(shí)講座培訓(xùn)課件
- DB12-T 1305-2024 公路瀝青路面泡沫瀝青冷再生技術(shù)規(guī)范
- 范文語(yǔ)文評(píng)課稿15篇
- 2024年山東省春季高考技能考試汽車專業(yè)試題庫(kù)-中(多選題匯總)
- 2016-2023年德州科技職業(yè)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 《人文科學(xué)概論》課件
評(píng)論
0/150
提交評(píng)論