版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2021年廣東省廣州市全國計(jì)算機(jī)等級(jí)考試C語言程序設(shè)計(jì)真題(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.
2.在一個(gè)源文件中定義的全局變量的作用域?yàn)椋?)
A.本程序的全部范圍B.本函數(shù)的全部范圍C.從定義該變量的位置開始到本文件結(jié)束D.以上說法都不正確
3.下列可用于C語言用戶標(biāo)識(shí)符的一組是
A.void,define,WORD
B.a3_b3,_123,Car
C.For,-abc,IFCase
D.2a,DO,sizeof
4.有以下程序:#include<stdio.h>main(){chara[5][10]={“China”,“beijing”,“very”,“welcome”,“you”};char*p[5];inti;for(i=3;i<5;i++){p[i]=*(a+i);printf(“%s”,p[i]);printf(“%c”,*p[i]);}}程序運(yùn)行后的輸出結(jié)果是()。
A.wwyyB.ChinaCbeijingbC.veryvwelcomewD.welcomewyouy
5.若有定義“inta,b;”,通過語句“scanf(“%d;%d,”&a,&b)能把整數(shù)3賦給變量a、5賦給變量b的輸入數(shù)據(jù)是()。
A.35B.3,5C.3;5D.35
6.s1和s2已正確定義并分別指向兩個(gè)字符串。若要求:當(dāng)s1所指串大于s2所指串時(shí),執(zhí)行語句s;則以下選項(xiàng)中正確的是()。
A.if(s1>s2)S;
B.if(strcmp(s1,s2))S;
C.if(strcmp(s2,sl)>O)S;
D.if(stremp(s1,s2)>O)S;
7.以下不合法的用尸標(biāo)識(shí)符是()。A.A.804zhangB._hhC.yy614D.If
8.以下程序輸出的結(jié)果是#include<stdio.h>#include<string.h>main(){charw[][10]={"ABCD","EFGH","IJKL","MNOP"},k;for(k=1;k<3;k++)printf("%s\n",&w[k][k]);}
A.ABCDFGHKLB.ABCEFGUMC.EFGJKOD.FGHKL
9.若有定義floata[15],*p=a;,且數(shù)組a的首地址為300H,則p+13所指向的數(shù)組元素的地址為()。
A.334HB.30DHC.352HD.31AH
10.定義根節(jié)點(diǎn)深度為1,有n個(gè)元素的完全二叉樹的深度是()
A.D(n)=log2(n)
B.D(n)=1+log2(n)
C.D(n)=n+log2(n)
D.D(n)=1+n*log2(n)
11.有下列程序:程序執(zhí)行后的輸出結(jié)果是()。A.11B.43C.57D.53
12.以下符號(hào)中不能作為標(biāo)識(shí)符的是()。A.256B.voidC.vanfD.4Struct
13.
14.若有以下語句:typedefstructS{intg;charh;}T;以下敘述中正確的是()。A.可用S定義結(jié)構(gòu)體變量B.可用T定義結(jié)構(gòu)體變量C.S是struct類型的變量D.T是structS類型的變量
15.若用一個(gè)大小為6的數(shù)值來實(shí)現(xiàn)循環(huán)隊(duì)列,且當(dāng)前rear和front的值分別為0和3,當(dāng)從隊(duì)列中刪除一個(gè)元素,再加入兩個(gè)元素后,rear和front的值分別為()。
A.1和5B.2和4C.4和2D.5和1
16.若變量a、i已正確定義,且i已正確賦值,合法的語句是()。
A.a==lB.++iC.a=a++=5D.a=int(i)
17.
18.有以下函數(shù)char*fun(char*p){returnp;}該函數(shù)的返回值是______。
A.無確切的值B.形參p中存放的地址值C.一個(gè)臨時(shí)存儲(chǔ)單元的地址D.形參p自身的地址值
19.有以下程序:#include<stdio.h>voidfunc(intn){inti;for(i=0;i<=n;i++)printf("*"):printf("#");}main(){func(3);printf("????");func(4);printf("n\");程序運(yùn)行后的輸出結(jié)果()。A.****#????***#
B.***#????****#
C.**#????****#
D.****#????*****#
20.下列選項(xiàng)中,當(dāng)x為大于1的奇數(shù)時(shí),值為0的表達(dá)式是()。
A.x%2==1B.x/2C.x%2!=0D.x%2==0
二、2.填空題(20題)21.數(shù)據(jù)庫的邏輯模型設(shè)計(jì)階段的任務(wù)是將______轉(zhuǎn)換成關(guān)系模式。
22.數(shù)據(jù)庫保護(hù)分為:安全性控制、______、并發(fā)性控制和數(shù)據(jù)的恢復(fù)。
23.以下程序的輸出結(jié)果是______。
#include<stdio.h>
main()
{inta[5]={2,4,6,8,10},*p;
p=a;p++;
printf("%d",*p);
}
24.在面向?qū)ο蠓椒ㄖ?,類的?shí)例稱為______。
25.以下程序的輸出結(jié)果是【】。
doublesub(doublex,doubley,doublez)
{y-=1.0;
z=z+x;
returnz;
}
main()
{doublea=2.5,b=9.0;
printf("functionrunningresultis:%6.1f\n",sub(b-a,a,A));
}
26.以下程序的輸出結(jié)果是()。
#include<stdio.h>
main()
fintx=0;
sub(&x,16,2);
printf("%d\n",x);
}
sub(int*a,intn,intk)
{if(k<=n)sub(a,n/2,2*k);
*a+=k;
}
27.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{inta=3,b=4,c=5,t=99;
if(b<a&&a<c)t=a;a=C;c=t;
if(a<c&&b<c)t=b;b=a;a=t
printf("%d%d%d\n",a,b,c);
}
28.在面向?qū)ο蠓椒ㄖ校尽棵枋龅氖蔷哂邢嗨茖傩耘c操作的一組對象。
29.在程序設(shè)計(jì)階段應(yīng)該采取______和逐步求精的方法,把一個(gè)模塊的功能逐步分解,細(xì)化為一系列具體的步驟,繼而用某種程序設(shè)計(jì)語言寫成程序。
30.下列程序的運(yùn)行結(jié)果是______。
#definePOWER(x)((x)*(x))
main()
{inti=1;
printf("%d,%d",POWER(i++),i);
}
31.當(dāng)數(shù)據(jù)的物理結(jié)構(gòu)(存儲(chǔ)結(jié)構(gòu)、存取方式等)改變時(shí),不影響數(shù)據(jù)庫的邏輯結(jié)構(gòu),從而不致引起應(yīng)用程序的變化,這是指數(shù)據(jù)的【】。
32.下列執(zhí)行后輸出的結(jié)果是【】。
main()
{intarr[10],i,k=0
for(i=0;i<10;i++)atr[i]=i
for(i=1,i<4;i++)k+=arr[i]+i;
printf("%d\n",k);
}
33.下面程序運(yùn)行后的輸出結(jié)果是()。
#include<stdio.h>
main()
{inta[]={1,2,3,4,5,6},*k[3],i=1;
while(i<4)
{k[i-1]=&a[2*i-1];
printf("%d",*k[i-1]);
i++;
}
}
34.指針變量p和數(shù)組a的說明如下:
int*a[3]={"aa","bb","cc"},**p;
執(zhí)行語句p=&a[2];后,*p指向的字符串是______。
35.以下程序的輸出結(jié)果是【】。
#include<stdlib.h>
main()
{char*s1,*s2,m;
s1=s2=(char*)malloc(sizeof(char));
*s1=15;*s2=20;m=*s1+*s2;
printf("%d\n",m);
}
36.以下程序的功能是:求出數(shù)組x中各相鄰兩個(gè)元素的和依次存放到a數(shù)組中,然后輸出。請?zhí)羁铡?/p>
main()
{intx[10],a[9],i;
for(i=0;i<10;i++)scanf("%d",&x[i]);
for([11];i<10;i++)
a[i-1]=x[i]+[12];.
for(i=0;i<9;i++)printf("%d",a[i]);
printf("");
}
37.寫出下列程序的輸出結(jié)果______。
main()
{int=0;
while(n++<=1);
printf("%d,",n);
printf("%d",n++);
}
38.在一棵二叉樹上第6層的結(jié)點(diǎn)個(gè)數(shù)最多是______個(gè)。
39.設(shè)有如下程序main(){intn1,n2;scanf(“%d”,&n2);while(n2!=0){n1=n2%10;n2=n2/10;printf(“%d”,n1);}}程序運(yùn)行后,如果從鍵盤上輸入1298,則輸出結(jié)果為
40.[]的任務(wù)是診斷和改正程序中的錯(cuò)誤。
三、1.選擇題(20題)41.以下4個(gè)選項(xiàng)中,不能看作一條語句的是
A.;B.a=5,b=2.5,c=3.6;C.if(a<5);D.if(b!=5)x=2;y=6;
42.在以下術(shù)語中,與數(shù)據(jù)的邏輯結(jié)構(gòu)無關(guān)的是______。
A.線性結(jié)構(gòu)B.鏈?zhǔn)浇Y(jié)構(gòu)C.樹型結(jié)構(gòu)D.網(wǎng)狀結(jié)構(gòu)
43.下列特征中不是面向?qū)ο蠓椒ǖ闹饕卣鞯氖?)。
A.多態(tài)性B.繼承C.封裝性D.模塊化
44.下面各選項(xiàng)中,均是C語言合法標(biāo)識(shí)符的選項(xiàng)組是
A.33weautoB._23me_3ewC._433e_elseD.ER-DF32
45.下列不屬于軟件工程的3個(gè)要素的是______。
A.工具B.過程C.方法D.環(huán)境
46.以下程序中函數(shù)sort的功能是對數(shù)組a中的數(shù)據(jù)進(jìn)行由大到小的排序:#include<stdio.h>voidsort(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[]={1,2,3,4,5,6,7,8,9,10},i;son(&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,
47.有以下程序main(){intm=0256,n=256;printf("%o%o\n",m,n);}程序運(yùn)行后的輸出結(jié)果是
A.02560400B.0256256C.256400D.400400
48.下列敘述中不正確的是
A.數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問題
B.數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致
C.數(shù)據(jù)庫設(shè)計(jì)是指設(shè)計(jì)一個(gè)能滿足用戶要求,性能良好的數(shù)據(jù)庫
D.數(shù)據(jù)庫系統(tǒng)是一個(gè)獨(dú)立的系統(tǒng),但是需要操作系統(tǒng)的支持
49.以下程序的輸出結(jié)果是#include<stdio.h>voidprt(int*x,int*y,int*z){printf("%d,%d,%d\n",++*x,++*y,*(z++));}main(){inta=10,b=40,c=20;prt(&a,&b,&c);prt(&a,&b,&c);}
A.11,42,3112,22,41
B.11,41,2012,42,20
C.11,21,4011,21,21
D.11,41,21.12,42,22
50.數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的()。
A.存儲(chǔ)問題B.共享問題C.安全問題D.保護(hù)問題
51.下面程序的輸出結(jié)果是()。#include"stdio.h"fun(xintx{inty=0;staticintz=5;z=x++,y++;return(Z);}main(){inta=4,i,j;for(i=0;i<2;i++)j=fun(a++);printf("%d",j);}
A.0B.3C.4D.5
52.以下程序運(yùn)行后的輸出結(jié)果是______。intd=1;fun(intp){staticintd=5;d+=p;printf("%d",d);returnd;}main(){inta=3;printf("%d\n",fun(a+fun(d)));}
A.699B.669C.61515D.6615
53.下列選項(xiàng)中,不是一個(gè)算法的基本特征的是()。
A.完整性B.可行性C.有窮性D.擁有足夠的情報(bào)
54.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是______。
A.程序的規(guī)模B.程序的易讀性C.程序的執(zhí)行效率D.程序的可移植性
55.下列數(shù)據(jù)中,不合法的C語言實(shí)型數(shù)據(jù)是
A.0.123B.123e3C.2.1e3.5D.789.0
56.以下能正確定義一維數(shù)組的選項(xiàng)是
A.inta[5]={0,1,2,3,4,5}
B.chara[]={'0','1','2','3','4','5','\0'};
C.chara={'A','B','C'};
D.inta[5]="0123";
57.“年齡在18—25之間”這種約束是屬于數(shù)據(jù)庫當(dāng)中的()
A.原子性措施B.一致性措施C.完整性措施D.安全性措施
58.已知形成鏈表的存儲(chǔ)結(jié)構(gòu)如下圖所示,則下述類型描述中的空白處應(yīng)填______。structlink{chardata;______;}node;
A.Structlinknext
B.link*next
C.structnextlink
D.Structlink*next
59.下列敘述中正確的是()。
A.黑箱(盒)測試方法完全不考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征
B.黑箱(盒)測試方法主要考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征
C.白箱(盒)測試不考慮程序內(nèi)部的邏輯結(jié)構(gòu)
D.上述3種說法都不對
60.結(jié)構(gòu)化分析方法是面向()的自頂向下、逐步求精進(jìn)行需求分析的方法
A.對象B.數(shù)據(jù)結(jié)構(gòu)C.數(shù)據(jù)流D.目標(biāo)
四、選擇題(20題)61.有以下程序則以下函數(shù)調(diào)用語句錯(cuò)誤的是()。
A.k=*f(a,b);B.k=add(a,b);C.k=(*f)(a,b);D.k=f(a,b);
62.
63.在數(shù)據(jù)管理技術(shù)的發(fā)展過程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是()。
A.數(shù)據(jù)庫系統(tǒng)B.文件系統(tǒng)C.人工管理D.數(shù)據(jù)項(xiàng)管理
64.有三個(gè)關(guān)系R、S和T如下:
則由關(guān)系R和S得到關(guān)系T的操作是()。
A.自然連接B.交C.投影D.并
65.利用fseek函數(shù)可實(shí)現(xiàn)的操作是()。
A.實(shí)現(xiàn)文件的順序讀寫B(tài).改變文件的位置指針C.實(shí)現(xiàn)文件的隨機(jī)讀寫D.以上答案均正確
66.對于現(xiàn)實(shí)世界中事物的特征,在實(shí)體一聯(lián)系模型中使用()。A.屬性描述B.關(guān)鍵字描述C.二維表格描述D.實(shí)體描述
67.
有下列程序:
#include<stdio.h>
main
{intx=0;
inty=0;
while(x<7&&++v)
{y--;
x++;}
printf("%d,%d",y,x);
}
程序的輸出結(jié)果是()。
A.0,7B.7,7C.0,6D.1,6
68.
69.
70.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.7B.5C.3D.9
71.若有以下定義:intt[3][2];,能正確表示t數(shù)組元素地址的表達(dá)式是______。
A.&t[3][2]B.t[3]C.t[1]D.*t[2]
72.設(shè)變量均已正確定義,若要通過
scaIIf(”%d%c%d%c”,&;al,&;el,&;a2,&;c2);
語句為變量al和a2賦數(shù)值l0和20,為變量cl和c2賦字符x和Y。以下所示的輸入形式中正確的是()。(注:口代表空格字符)
73.將c語言的整數(shù)設(shè)為整數(shù)類1,則下面屬于類I實(shí)例的是()。
A.一103B.10E3C.10.3D.“0103”
74.
75.有以下程序:
main()
{
chara[7]="a0\OaO\0";inti,j;
i=sizeof(a);j=strlen(a);
printf("%d%d\n",i,j);
}
程序運(yùn)行后的輸出結(jié)果是()。
A)22B)76
C)75D)62
76.有以下程序程序執(zhí)行后輸出結(jié)果是()。
A.5.OOB.5C.5.2lD.0.0
77.有以下程序:
#include<stdio.h>
main()
{chara[5][10]={"one","tw0","three","four","five"};
inti,j;
chart:、
for(i=0;i<4;i++)
for(j=i+1;j<5;j++)
if(a[i][O]>a[j][0])
{t=a[i][O];a[i][O]=a[j][O];a[j][O]=t;)
puts(a[1]);
}
程序運(yùn)行后的輸出結(jié)果是()。
A.fwo
B.fix
C.two
D.owo
78.下列函數(shù)的功能是()。
A.將a所指字符串賦給b所指空間
B.使指針b指向a所指字符串
C.將a所指字符串和b所指字符串進(jìn)行比較
D.檢查a和b所指字符串中是否有’\0
79.
80.下列選項(xiàng)中不會(huì)引起二義性的宏定義是()。
A.#defineS(x)x*x
B.#defineS(x)(x)*(x)
C.#defineS(x)(x*x)
D.#defineS(x)((x)*(x))
五、程序改錯(cuò)題(1題)81.下列給定的程序中,函數(shù)proc()的功能是:用選擇法對數(shù)組中的m個(gè)元素按從小到大的順序進(jìn)行排序。
例如,排序前的數(shù)據(jù)為:1132-5214
則排序后的數(shù)據(jù)為:-52111432
請修改程序中的錯(cuò)誤,使它能得到正確結(jié)果。
注意:不要改動(dòng)main()函數(shù),不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計(jì)題(1題)82.請編寫一個(gè)函數(shù)proc,它的功能是:求出1~m(含m)能被7或11整除的所有整數(shù)放在數(shù)組a中,通過n返回這些數(shù)的個(gè)數(shù)。例如,若傳給m的值為70,則程序輸出:7111421222833354244495556636670注意:部分源程序給出如下。請勿改動(dòng)main函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc的花括號(hào)中填人所編寫的若干語句。試題程序:#include<stdlib.h>#include<conio.h>#include<stdio.h>#defineN100voidproc(intm,int*a,int*n){ }voidmain{intarr[N],n,k;system("CLS");proc(70,arr,&n);for(k=0;k<n;k++)if((k+1)%20==0)//每行輸出20個(gè)數(shù){printf("%4d",arr[k]);printf("\n");}elseprintf("%4d",arr[k]);printf("\n");}
參考答案
1.D
2.C
3.B解析:C語言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下畫線3種字符組成,且第一個(gè)字符必須為字母或下畫線,排除選項(xiàng)C)和D);C語言中還規(guī)定標(biāo)識(shí)符不能為C語言的關(guān)鍵字,而選項(xiàng)A)中void為關(guān)鍵字,故排除選項(xiàng)A)。
4.Dmain函數(shù)定義一個(gè)二維字符數(shù)組a,它包含5個(gè)字符串,每個(gè)字符串存放在一個(gè)長度為10的一維數(shù)組中。指針數(shù)組P包含5個(gè)字符指針元素。for循環(huán)中,每次將*(a+i)賦給P[i],再輸出P[i]和*P[i]。由于*(a+i)等價(jià)于a[i],因此每次都是將下標(biāo)為i的字符串首地址賦給p[i],再輸出該字符串和該字符串的首字符。i=3時(shí),輸出字符串“welcome”和首字符“w”;i=4時(shí),輸出字符串“you”和首字符“y”。綜上,輸出結(jié)果為welcomewyouy。故本題答案為D選項(xiàng)。
5.C輸入數(shù)據(jù)的格式必須與scanf的格式控制字符串完全匹配。函數(shù)中非格式字符需要原樣輸入,所以輸入時(shí)必須在3和5之間輸入“;”。故本題答案為C選項(xiàng)。
6.D在C語言中,不能直接比較兩個(gè)字符串的大小,必須用特定的函數(shù)來完成,選項(xiàng)A錯(cuò)誤;選項(xiàng)B不管大于還是小于都執(zhí)行S,不符合題意;選項(xiàng)C正好相反,當(dāng)s2大于s1時(shí),執(zhí)行語句S,可知選項(xiàng)D正確。
7.AC語言規(guī)定,標(biāo)識(shí)符是由字母、數(shù)字或下劃線組成,并且它的第一個(gè)字符必須是字母或下劃線。
8.D當(dāng)k=1時(shí),引用的是二維數(shù)組元素w[1][1],值為字符串“FGH”;當(dāng)k=2時(shí),引用的是數(shù)組元素w[2][2],即字符串“KL”;當(dāng)k=3時(shí),結(jié)束程序的執(zhí)行。注意:字符串?dāng)?shù)組的定義。
9.C解析:解答本題,首先要明白在對指針進(jìn)行加、減運(yùn)算的時(shí)候,數(shù)字“1”不是十進(jìn)制的數(shù)“1”,而是指'1'個(gè)存儲(chǔ)單元長度,而1個(gè)存儲(chǔ)單元長度占多少存儲(chǔ)空間,應(yīng)該視具體情況而定。如果基本類型是int型,移動(dòng)1個(gè)存儲(chǔ)單元的長度就是位移2個(gè)字節(jié),如果基本類型是float型,移動(dòng)1個(gè)存儲(chǔ)單元的長度就是位移4個(gè)字節(jié)。所以p+13所指向的數(shù)組元素的地址:300H+(13*上標(biāo))4)H=352H。
10.B
11.D函數(shù)f是一個(gè)遞歸函數(shù)。當(dāng)x>=2時(shí),遞歸調(diào)用自身,返回值為x*f(x-l)+(x-l)*f(x-2);3x<2時(shí),返回值為1。main函數(shù)中,調(diào)用函數(shù)f傳入4,所以y的值是f(4)。f(4)等價(jià)于4*f(3)+3*f(2);f(3)等價(jià)于3*f(2)+2*f(1);f(2)等價(jià)于2*f(1)+1*f(0);f(0)、f(1)等價(jià)于1。綜上:f(2)等于3,f(3)等于11,f(4)等于53。本題答案為D選項(xiàng)。
12.B
13.B
14.B解析:語句typedefstructS{intg;charh;}T的作用是用T作為struetS{intg;charh;)的簡寫,所以選B。
15.B
16.B選項(xiàng)A為表達(dá)式,因此不正確,選項(xiàng)C中a++本身就是表達(dá)式,無需再賦值,選項(xiàng)D中,在強(qiáng)制類型轉(zhuǎn)換時(shí),類型名應(yīng)用括號(hào)括起來,故選擇8選項(xiàng)。
17.C
18.B解析:p本身就是一個(gè)字符型指針變量,返回p也就是返回變量p中存放的地址值。
19.D本題考查簡單的for循環(huán),func(3)由于i是從0開始,所以會(huì)輸出四個(gè)“*”和一個(gè)“#”,然后打印四個(gè)“?”func(4),會(huì)輸出五個(gè)“*”和一個(gè)“#”,所以答案選擇D。
20.D解析:因?yàn)閤的值為大于1的奇數(shù),所以x除以2的余數(shù)等于1。所以選項(xiàng)D)等于關(guān)系表達(dá)式的結(jié)果為假,即等于0。
21.E-R圖E-R圖解析:數(shù)據(jù)庫邏輯設(shè)計(jì)的任務(wù)是將概念模型進(jìn)一步轉(zhuǎn)化成相應(yīng)的數(shù)據(jù)模型。而E-R圖是主要的概念模型,因此數(shù)據(jù)庫的邏輯設(shè)計(jì)的主要工作是將E-R圖轉(zhuǎn)換成關(guān)系模式。
22.完整性控制完整性控制
23.指針P指向數(shù)組a的首地址,執(zhí)行語句p++;后p指向數(shù)組a的第2個(gè)元素的地址,即a[1]的地址,因此*p=a[1]=4。\r\n\r\n
24.對象對象解析:類描述的是具有相似性質(zhì)的一組對象。例如,每本具體的書是一個(gè)對象,而這些具體的書都有共同的性質(zhì),它們都屬于更一般的概念“書”這一類對象。一個(gè)具體對象稱為類的實(shí)例。
25.functionrunningresultis:9.0
26.1414解析:本題考查遞歸函數(shù)的調(diào)用。在主函數(shù)中調(diào)用sub(&x,16,2)函數(shù),此時(shí)n=16,k=2,if語句的控制的條件k<=n成立,所以執(zhí)行下面的語句,調(diào)用sub(x,8,4),此時(shí)n=8,k=4,if語句的控制條件k<=n成立,所以執(zhí)行下面的語句,調(diào)用sub(x,4,8),此時(shí)n=4,k=8,if語句控制的條件k<=n不成立,因此,最后得x=2+4+8=14。
27.4599
28.類類解析:在面向?qū)ο蠓椒ㄖ?,類描述的是具有相似屬性與操作的一組對象。
29.自頂向下自頂向下解析:在程序設(shè)計(jì)時(shí),應(yīng)先考慮總體,后考慮細(xì)節(jié),逐步使問題具體化,對復(fù)雜的問題,應(yīng)該設(shè)計(jì)一些子目標(biāo)作為過渡,上述方法概括為:自頂向下,逐步細(xì)化。
30.111,1解析:POWER(i++)中先引用i的值1,再將i的值加1,POWER(i++)=1*1=1。
31.物理獨(dú)立性物理獨(dú)立性
32.1212解析:本題的第—個(gè)for循環(huán)用于始數(shù)組arr賦初值,第二個(gè)for循環(huán)用于求和運(yùn)算。由于第二個(gè)for循環(huán)初始值為1,而循環(huán)條件為i<4,所以求的是arr[1]到arr[3]及i的和,所以輸出結(jié)果為12。
33.246
34.cc。cc。解析:a是指針數(shù)組,每個(gè)數(shù)組元素存放的是字符數(shù)據(jù)的地址,數(shù)組a的3個(gè)元素分別指向字符串常量'aa'、'bb'和'cc',指針p賦予數(shù)組元素a[2]的值,即指向第3個(gè)字符串。
35.4040解析:本題中指針s1和s2都指向同一個(gè)內(nèi)存中的地址。因此語句“*s2=20;”執(zhí)行后,*\u3000s1=*s2=20。所以m最后的值為40。
36.對于10個(gè)數(shù),相鄰的兩個(gè)數(shù)相加取和,總共要進(jìn)行9次加法運(yùn)算,所以空14處應(yīng)填入i=1。相鄰的兩個(gè)數(shù)相加取和,放在數(shù)組a中,x[0]與x[1]的和存放在a[0]中,所以空15處應(yīng)填入x[i-1]。\r\n\r\n
37.333,3解析:本題在while(n++<=1)語句后,直接加了分號(hào),說明如果while()的條件為真時(shí),該循環(huán)什么都不做;n++是先取n的當(dāng)前值和I做比較,然后再將n加1。第一次循環(huán),n=0時(shí),循環(huán)條件n++=0<=1成立,執(zhí)行循環(huán),然后得到n=1。第二次循環(huán),n=1時(shí),循環(huán)條件n++=1<=1成立,執(zhí)行循環(huán),然后得到n=2。第三次循環(huán),n=2時(shí),循環(huán)條件n++=2<=1不成立,不執(zhí)行循環(huán),但在判斷循環(huán)條件時(shí)仍將n加1,得到n=3。退出循環(huán)后執(zhí)行printf語句,第二個(gè)printf語句輸出n++,是先輸出n的當(dāng)前值3,然后再將n加1,即程序結(jié)束后得到n=4,但輸出的是3。
38.3232解析:根據(jù)二叉樹的性質(zhì),在二叉樹的第K層上,最多有2k-1個(gè)結(jié)點(diǎn)。所以,第6層的結(jié)點(diǎn)數(shù)最多為32。
39.89218921
40.程序調(diào)試程序調(diào)試解析:程序調(diào)試的任務(wù)是診斷和改正程序中的錯(cuò)誤。它與軟件測試不同,軟件測試是盡可能多地發(fā)現(xiàn)軟件中的錯(cuò)誤。先要發(fā)現(xiàn)軟件的錯(cuò)誤,然后借助于一定的調(diào)試工具去找出軟件錯(cuò)誤的具體位置。軟件測試貫穿整個(gè)軟件生命期,調(diào)試主要在開發(fā)階段。
41.D解析:選項(xiàng)D)為兩條語句。
42.B
43.DD?!窘馕觥棵嫦?qū)ο笤O(shè)計(jì)方法與面向過程設(shè)計(jì)方法有本質(zhì)的不同,其基本原理是:使用現(xiàn)實(shí)世界的概念抽象地思考問題從而自然地解決問題。其特點(diǎn)包括:分類性、多態(tài)性、封裝性、模塊獨(dú)立性、繼承和多態(tài)性等。模塊化是結(jié)構(gòu)化程序設(shè)計(jì)的特點(diǎn)。
44.B解析:合法的標(biāo)識(shí)符是由字母、數(shù)字和下劃線組成,并且第一個(gè)字符必須為字母或下劃線,用戶定義的標(biāo)識(shí)符不能與關(guān)鍵字相同。選項(xiàng)A),數(shù)字不能為第一個(gè)字母,auto為關(guān)鍵字;選項(xiàng)C)中,也是數(shù)字不能為第一個(gè)字母,else為關(guān)鍵字;選項(xiàng)D)中負(fù)號(hào)不合法。
45.D解析:本題考查了軟件工程的基本概念。軟件工程包括3個(gè)要素,即方法、工具和過程。方法是完成軟件工程項(xiàng)目的技術(shù)手段;工具支持軟件的開發(fā)、管理和文檔生成;過程支持軟件開發(fā)的各個(gè)環(huán)節(jié)的控制和管理。
46.C解析:在main函數(shù)中調(diào)用sort函數(shù)時(shí),實(shí)參&aa[3]把數(shù)組元素aa[3]的首地址傳給形參數(shù)組a,使aa[3]與a[0]相對應(yīng)。sort函數(shù)將從aa[3]開始的連續(xù)5個(gè)數(shù)進(jìn)行了從大到小的排序,其他數(shù)組元素不變。
47.C解析:程序中定義了兩個(gè)整型變量,一個(gè)用八進(jìn)制表示,一個(gè)用十進(jìn)制表示,輸出語向中要求m,n都為八進(jìn)制輸出,顯然m原樣輸出為256,n的值轉(zhuǎn)換為八進(jìn)制輸出(256的八進(jìn)制為400),故輸出400.所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
48.B解析:B選項(xiàng)錯(cuò)誤,原因是,數(shù)據(jù)庫應(yīng)該具有物理獨(dú)立性和邏輯獨(dú)立性,改變其一而不影響另一個(gè)。
49.B解析:盡管C語言以傳值方式進(jìn)行函數(shù)調(diào)用,但也可以通過傳遞指針的值(變量的地址)來達(dá)到修改實(shí)參變量值的目的,這是此題主要說明的問題。其次,應(yīng)注意表達(dá)式。(z++)的值是*z,其后的z++在程序中無實(shí)際作用。函數(shù)調(diào)用時(shí),由于x,y和z分指向a,b和c,因此,*x,*y和*z就是a,b和c。第一次調(diào)用函數(shù)時(shí),*x=a=10,*y=b=40,*z=c=20輸出結(jié)果為11,41,20,至此,已經(jīng)可以肯定選項(xiàng)B)是正確的。在第一次輸出后,a=11,b=41,c=20,第二次輸出為:12,42,20。注意:指針作為參數(shù)的函數(shù)調(diào)用的執(zhí)行過程。
50.B解析:數(shù)據(jù)庫產(chǎn)生的背景就是計(jì)算機(jī)的應(yīng)用范圍越來越廣泛,數(shù)據(jù)量急劇增加,對數(shù)據(jù)共享的要求越來越高。共享的含義是多個(gè)用戶、多種語言、多個(gè)應(yīng)用程序相互覆蓋的使用一些公用的數(shù)據(jù)集合。在這樣的背景下,為了滿足多用戶、多應(yīng)用共,享數(shù)據(jù)的要求,就出現(xiàn)了數(shù)據(jù)庫技術(shù),以便對數(shù)據(jù)庫進(jìn)行管理。因此,數(shù)據(jù)庫技術(shù)的根本目標(biāo)就是解決數(shù)據(jù)的共享問題。故選項(xiàng)B正確。
51.D解析:本題在fun()函數(shù)中定義了一個(gè)靜態(tài)局部變量z,在第一次調(diào)用此函數(shù)時(shí),z被初始化為5,而以后的調(diào)用2都會(huì)保留上次調(diào)用后的值。主函數(shù)通過一個(gè)for循環(huán),二次調(diào)用fun()函數(shù),第1次調(diào)用實(shí)參表達(dá)式a++的值為4,執(zhí)行z=x++,y++;語句,因運(yùn)算符“=”的優(yōu)先級(jí)高于“,”,故z的值為表達(dá)式x++的值,x++是先對z賦值再對x加1,則z的值為4。第二次調(diào)用實(shí)參表達(dá)式a++的值為5,返回結(jié)果也為5,所以最后輸出結(jié)果是5。D為所選。
52.C解析:靜態(tài)局部變量在編譯時(shí)賦初值,即只賦初值一次,在程序運(yùn)行時(shí)它已有初值。以后每次調(diào)用時(shí)不再重新賦初值而只是保留上次函數(shù)調(diào)用結(jié)束時(shí)的值,而對自動(dòng)變量賦初值,不是在編譯時(shí)進(jìn)行的,而在函數(shù)調(diào)用時(shí)進(jìn)行,每調(diào)用一次函數(shù)重新給一次初值,相當(dāng)于執(zhí)行一次賦值語句。本題在程序開頭定義了全局變量d并賦初值1,在被調(diào)函數(shù)fun()中,定義了靜態(tài)局部變量d,初值為5。在第一次調(diào)用函數(shù)fun時(shí),d初值為5,p由主函數(shù)傳遞過來的值為1,則d=d+p=5+1=6,由于d是靜態(tài)局部變量,在函數(shù)調(diào)用結(jié)束后,它仍保留d=6。再次調(diào)用fun函數(shù),d的初值為6,而由主函數(shù)傳遞的p的值為9,則此時(shí)d=d+p=6+9=15,最后打印輸出d的值并返回主函數(shù)。
53.A解析:作為一個(gè)算法,一般應(yīng)該具有下列4個(gè)特征:(1)可行性,即考慮到實(shí)際的條件能夠達(dá)到一個(gè)滿意的結(jié)果;(2)確定性,算法中的每一個(gè)步驟都必須是有明確定義的,(3)有窮性,一個(gè)算法必須在有限的時(shí)間內(nèi)做完;(4)擁有足夠的情報(bào)。
54.B解析:采用結(jié)構(gòu)化編程方法的好處主要在于:一是便于控制、降低程序的復(fù)雜性,因此便于編寫程序。二是程序清晰易讀,可理解性好。因此,結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是程序的易讀性,而不是程序的規(guī)模、程序的執(zhí)行效率和程序的可移植性。
55.C解析:在C語言中,實(shí)數(shù)有兩種形式表示,即十進(jìn)制數(shù)形式和指數(shù)形式,在指數(shù)形式中,e3、2.le3.5、.e3、e等都是不合法的指數(shù)形式。再如123e3或123E3都代表123乘以10的3次方。注意,字母e的前面必須有數(shù)字,且e的后面必須是整數(shù)。
56.B解析:選項(xiàng)A)中,定義的初值個(gè)數(shù)大于數(shù)組的長度;選項(xiàng)C)中,數(shù)組名后少了中括號(hào);選項(xiàng)D)中,整型數(shù)組不能賦予字符串。
57.C解析:本題主要考查數(shù)據(jù)庫的各種特性。其中數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性(如學(xué)生的學(xué)號(hào)必須惟一,性別只能是女或男等),數(shù)據(jù)庫是否具備完整性關(guān)系到數(shù)據(jù)庫系統(tǒng)能否真實(shí)反映現(xiàn)實(shí)世界,因此維護(hù)數(shù)據(jù)庫的完整性是非常重要的。根據(jù)題意分析可知這種約束屬于數(shù)據(jù)庫中的完整性措施。
58.D解析:在單向鏈表中,由于每個(gè)結(jié)點(diǎn)需要存儲(chǔ)下一個(gè)結(jié)點(diǎn)的地址,且下一個(gè)結(jié)點(diǎn)的數(shù)據(jù)類型與前一個(gè)結(jié)點(diǎn)的數(shù)據(jù)類型完全相同,故應(yīng)為structlink*next。
59.A解析:黑箱測試方法完全不考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征,而只是根據(jù)程序功能導(dǎo)出測試用例,選項(xiàng)A是正確的,選項(xiàng)B錯(cuò)誤。白箱測試是根據(jù)對程序內(nèi)部邏輯結(jié)構(gòu)的分析來選取測試用例,選項(xiàng)C錯(cuò)誤。
60.CC?!窘馕觥拷Y(jié)構(gòu)化分析方法是面向數(shù)據(jù)流進(jìn)行需求分析的方法,采用自頂向下、逐層分解,建立系統(tǒng)的處理流程,以數(shù)據(jù)流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏輯模型。
61.AA)選項(xiàng)中*f(a,b)表示調(diào)用后返回一個(gè)指向整型數(shù)據(jù)的地址指針,即該函數(shù)的返回值為指針類型,因此不能將其賦值給整型變量k。
62.D
63.A在數(shù)據(jù)管理技術(shù)的發(fā)展過程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是數(shù)據(jù)庫系統(tǒng)這一階段。數(shù)據(jù)庫系統(tǒng)階段用數(shù)據(jù)模型來表示復(fù)雜的數(shù)據(jù),有較高的數(shù)據(jù)獨(dú)立性。數(shù)據(jù)庫系統(tǒng)為用戶提供了方便的用戶接口,用戶既可使用查詢語
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 單位管理制度范例匯編【職工管理】十篇
- 《市場進(jìn)入和效率》課件
- DBJ51-T 040-2021 四川省工程建設(shè)項(xiàng)目招標(biāo)代理操作規(guī)程
- 超高層商住樓轉(zhuǎn)換層施工方案#模板工程#鋼筋工程#混凝土工程
- 《小數(shù)點(diǎn)移動(dòng)》課件2
- 《寶馬銷售流程》課件
- 《電動(dòng)力學(xué)chapter》課件
- 印刷包裝行業(yè)市場營銷經(jīng)驗(yàn)分享
- 電腦設(shè)備銷售員工作總結(jié)
- 玩具模型銷售工作總結(jié)
- 2024-2030年中國高密度聚乙烯管道行業(yè)發(fā)展展望與投資策略建議報(bào)告
- 2024-2030年中國醋酸乙烯行業(yè)運(yùn)營狀況與發(fā)展風(fēng)險(xiǎn)評(píng)估報(bào)告
- 企業(yè)文化塑造與員工激勵(lì)方案
- 2024年01月22504學(xué)前兒童科學(xué)教育活動(dòng)指導(dǎo)期末試題答案
- 2023-2024學(xué)年貴州省遵義市新蒲新區(qū)八年級(jí)(上)期末數(shù)學(xué)試卷(含答案)
- 多發(fā)性神經(jīng)病護(hù)理
- 【MOOC】線性代數(shù)-浙江大學(xué) 中國大學(xué)慕課MOOC答案
- 開門紅包費(fèi)用申請
- 區(qū)塊鏈原理與實(shí)踐全套完整教學(xué)課件
- 運(yùn)動(dòng)神經(jīng)元病小講課
- 工會(huì)的財(cái)務(wù)管理制度〔13篇〕
評(píng)論
0/150
提交評(píng)論