




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(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ì)于靜態(tài)表的順序查找法,若在表頭設(shè)置監(jiān)視哨,則正確的查找方式為()A.從第0個(gè)元素往后查找該數(shù)據(jù)元素
B.從第1個(gè)元素往后查找該數(shù)據(jù)元素
C.從第n個(gè)元素往開(kāi)始前查找該數(shù)據(jù)元素
D.與查找順序無(wú)關(guān)
2.以下程序的輸出結(jié)果是()。main{inta=1,b;for(b=1,b<=10;b++){if(a>=8)break;if(a%2==1){a+=5;continue;}a=3;}printf("%d\n",b);}A.A.3B.4C.5D.6
3.下列關(guān)于棧的描述中錯(cuò)誤的是()。A.棧是先進(jìn)后出的線性表B.棧只能順序存儲(chǔ)C.棧具有記憶作用D.對(duì)棧的插入與刪除操作中,不需要改變棧底指針
4.
5.關(guān)系數(shù)據(jù)庫(kù)的數(shù)據(jù)及更新操作必須遵循()等完整性規(guī)則。
A.實(shí)體完整性和參照完整性
B.參照完整性和用戶定義的完整性
C.實(shí)體完整性和用戶定義的完整性
D.實(shí)體完整性、參照完整性和用戶定義的完整性
6.有以下程序
#include<stdio.h>
main()
{intx=1,y=2,z=3;
if(x>y)
if(y<z)printf("%d",++z);
elseprintf("%d",++y);
printf("%d\n",x++);
}
程序的運(yùn)行結(jié)果是
A.A.331
B.41
C.2
D.1
7.有以下程序:#include<stdio.h>main(){inta=1,b=2;for(;a<8;a++){b+=a;a+=2;}printf(“%d,%d\n”,a,b);}程序運(yùn)行后的輸出結(jié)果是()。
A.9,18B.8,11C.7,11D.10,14
8.C語(yǔ)言中不合法的字符串常量是
A.\121B.'Y'C.\n\nD.ABCD\x6d
9.有下面程序段#include"stdio.h"#include"string.h"main(){chara[3][20]={{"china"};{"isa"},{bigcountry!"}};chark[100]={0},*p=k;inti;for(j=0;j<3;i++){p=strcat(p,a[i]);}i=strlen(p);printf("%d\n",i);}則程序段的輸出結(jié)果是
A.18B.19C.20D.21
10.考慮下圖中的程序段,①號(hào)語(yǔ)句的輸出結(jié)果是()。A.A.'a'B.'t'C.'c'D.'k'
11.下列程序的輸出結(jié)果是()。main(){chara[7]="a0\0a0\0";inti,j;i=sizeof(a);j=strlen(a);printf("%d%d\n",i,j);}
A.22B.76C.72D.62
12.下面程序的輸出結(jié)果是______。#include<stdio.h>main(){char*p[]={"BOOL","OPK","H","SP"};inti:for(i=3;i>=0;i-,i-)printf("%c",*p[i]);printf("\n");}
A.SOB.SPC.SPOPKD.SHOB
13.表達(dá)式“a+=a-=a=9”的值是()。
A.18B.-9C.0D.9
14.有以下程序:#include<stdio.h>main(){charch[]=“uvwxyz”,*pc;pc=ch;printf(“%c\n”,*(pc+5));}程序的運(yùn)行結(jié)果是()
A.zB.0C.元素ch[5]的地址D.字符y的地址
15.
下列程序執(zhí)行后的輸出結(jié)果是()。
voidfunc(int*a,intb[])
{b[0]=*a+b;}main
{inta,b[5];
a=0.b[0]=3;
func(&a,b);printf("%d\n",b[0]);
}
A.6B.7C.8D.9
16.下列敘述中正確的是()。
A.對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行查找,最壞情況下需要的比較次數(shù)為n
B.對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為n/2
C.對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為log2n
D.對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為nlog2n
17.表達(dá)式18/4*sqrt(4.0)/8值的數(shù)據(jù)類型為()。A.intB.floatC.doubleD.不確定
18.下列敘述中錯(cuò)誤的是()。
A.一個(gè)C語(yǔ)言程序只能實(shí)現(xiàn)一種算法
B.c程序可以由多個(gè)程序文件組成
C.C程序可以由一個(gè)或多個(gè)函數(shù)組成
D.一個(gè)c函數(shù)可以單獨(dú)作為一個(gè)C程序文件存在
19.有以下程序:#include<stdio.h>#defineN4voidfun(inta[][N],intb[]){inti;for(i=0;i<N;i++)b[i]=a[i][i]-a[i][N-1-i];}main(){intx[N][N]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},y[N],i;fun(x,y);for(i=0;i<N;i++)printf(“%d”,y[i]);printf(“\n”);}程序的運(yùn)行結(jié)果是()。
A.-3,-1,1,3,B.-12,-3,0,0,C.0,1,2,3,D.-3,-3,-3,-3,
20.
二、2.填空題(20題)21.在鏈表的運(yùn)算過(guò)程中,能夠使空表與非空表的運(yùn)算統(tǒng)一的結(jié)構(gòu)是______。
22.下面程序的輸出結(jié)果是【】。
#defineMAX3
inta[MAX];
main()
{fun1();fun2(a);printf("\n");}
fun1()
{intk,t=0;
for(k=0;k<MAX;k++,t++)a[k]=t+t;
}
fun2(intb[])
{intk;
for(k=0;k<MAX;k++)printf("%d",*(b+k));
}
23.已知bead指向一個(gè)帶頭結(jié)點(diǎn)的單向鏈表,鏈表中每個(gè)結(jié)點(diǎn)包含數(shù)據(jù)域(data)和指針域(next),數(shù)據(jù)域?yàn)檎?。以下函?shù)求出鏈表中所有連接點(diǎn)數(shù)據(jù)域的和值作為函數(shù)值返回。請(qǐng)?jiān)跈M線處填入正確內(nèi)容。
{intdata;structlink*next;}
main()
{structlink*head;
sam(______);
{stmctlink*p;ints=0;
p=head->next;
while(p){s+=p->data;p=p->next;}
return(s);}
24.算法的復(fù)雜度主要包括【】復(fù)雜度和空間復(fù)雜度。
25.在數(shù)據(jù)庫(kù)管理系統(tǒng)提供的數(shù)據(jù)定義語(yǔ)言、數(shù)據(jù)操縱語(yǔ)言和數(shù)據(jù)控制語(yǔ)言中,【】負(fù)責(zé)數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構(gòu)建。
26.下列程序的輸出結(jié)果是【】。
voidfun(int*n)
{while((*n))
printf("%d",(*n)--);
}
main()
{inta=10;
fun(&a);
}
27.下面的if語(yǔ)句與y=(x>=10)?3*x-11:(x<1)?x:2*x-1;的功能相同,請(qǐng)補(bǔ)充完整。
if(______)
if(______)y=2*x-1;
elsey=x;
elsey=3*x-11;
28.設(shè)x和y均為int型變量,且x=1,y=2,則表達(dá)式double(1+x/y)的值為【】。
29.下面程序的功能是將一個(gè)字符串str的內(nèi)容顛倒過(guò)來(lái),請(qǐng)?zhí)羁铡?/p>
#include<string.h>
main()
{inti,j,【】;charstr[]={"1234567"};
for(i=0,j=strlen(str)【】;i<j;i++,j--)
{k=str[i];str[i]=str[j];str[j]=k;}
printf("%s\n",str);}
30.若輸入字符串:(圖片),則以下while循環(huán)體將執(zhí)行【】次。
while((ch=getchar())=='e')printf("*");
31.數(shù)據(jù)庫(kù)管理系統(tǒng)常見(jiàn)的數(shù)據(jù)模型有層次模型、網(wǎng)狀模型和【】3種。
32.下列程序的輸出結(jié)果是【】。
intt(intx,inty,ntcp,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);
}
33.當(dāng)數(shù)據(jù)的物理結(jié)構(gòu)(存儲(chǔ)結(jié)構(gòu))改變時(shí),不影響數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu),從而不致引起應(yīng)用程序的變化,這是指數(shù)據(jù)的_______。
以下程序的輸出結(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);prr(&a,&b,&c);}
34.Jackson方法是一種面向【】的結(jié)構(gòu)化方法。
35.數(shù)據(jù)庫(kù)設(shè)計(jì)分為以下6個(gè)設(shè)計(jì)階段:需求分析階段、______、邏輯設(shè)計(jì)階段、物理設(shè)計(jì)階段、實(shí)施階段、運(yùn)行和維護(hù)階段。
36.以下程序的輸出結(jié)果是【】。
main()
{chars[]="ABCD",*p;
for(p=s+1;p<s+4;p++)printf("%s\n",p);}
37.以下程序的功能是:利用指針指向三個(gè)整型變量,并通過(guò)指針運(yùn)算找出三個(gè)數(shù)中的最大值,輸出到屏幕上。請(qǐng)?zhí)羁铡?/p>
main()
{intx,y,z,max,*px,*py,*pz,*pmax;
scanf("%d%d%d",&x,&y,&z);
px=&x;py=&y;pz=&z;pmax=&max;
【】;
if(*pmax<*py)*pmax=*py;
if(*pmax<*pz)*pmax=*pz;
printf("max=%d\n",max);}
38.已知字符'A'的ASCII碼值為65,以下語(yǔ)句的輸出結(jié)果是【】。
charch='B';
printf("%c%d\n",ch,ch);
39.以下程序運(yùn)行后的輸出結(jié)果是【】。
#include<stdio.h>
main()
{charc;intn=100;
floatf=10:doublex:
x=f*=n/=(c=50);
printf("%d%f\n",n,x);
}
40.在面向?qū)ο蠓椒ㄖ校瑢?duì)象之間進(jìn)行通信的構(gòu)造稱為()。
三、1.選擇題(20題)41.下列說(shuō)法不正確的是()。
A.調(diào)用函數(shù)時(shí),實(shí)參可以是表達(dá)式
B.調(diào)用函數(shù)時(shí),實(shí)參與形參可以共用內(nèi)存單元
C.調(diào)用函數(shù)時(shí),將實(shí)參的值復(fù)制給形參,使實(shí)參變量和形參變量在數(shù)值上相等
D.調(diào)用函數(shù)時(shí),實(shí)參與形參的類型必須一致
42.下列程序的輸出結(jié)果是()。point(char*pt);main(){charb[4]={'a','c','s','f},*pt=b;pt=point(pt);printf("%c\n",*pt);}point(char*p){p+=3;returnp;}
A.sB.cC.fD.a
43.若有下面的說(shuō)明語(yǔ)句,已知A的+進(jìn)制數(shù)為65,則以下的輸出結(jié)果為unionun{inta;charc[2];}w;w.c[0]='A';w.c[1]='a';printf("%o\n",w.a);
A.60501B.30240C.9765D.以上答案均錯(cuò)
44.C語(yǔ)言提供的合法的數(shù)據(jù)類型關(guān)鍵字是_______。
A.DoubleB.floatC.integerD.Char
45.設(shè)有如下說(shuō)明:typedefstruct{intn;charc;doublex;}STD;則以下選項(xiàng):能正確定義結(jié)構(gòu)體數(shù)組并賦初值的語(yǔ)句是()。
A.STDtt[2]={{1,'A',62},{2,'B',75}};
B.STDtt[2]={1,"A",62,2,"B",75};
C.struettt[2]={{1,'A'},{2,'B'}};
D.structtt[2]={{1,"A",62.5},{2,"B",75.0}};
46.以下程序的功能是:建立一個(gè)帶布頭結(jié)點(diǎn)的單向鏈表,并將存儲(chǔ)在數(shù)組中的字符依次存儲(chǔ)到鏈表的各個(gè)結(jié)點(diǎn)中,請(qǐng)從與下劃線處號(hào)碼對(duì)應(yīng)的一組選項(xiàng)中選擇出正確的選項(xiàng)
#include<stdlib.h>
structnode
{chardata;structnode*next;};
(48)CreatList(char*s),
{structnode*h,*p,*q;
h=(structnode*)malloc(sizeof(structnode));
p=q=h;
while(*s!="\0")
{p=(structnode*)malloc(sizeof(structnode));
p->data=(49);
q->next=p;
q=(50);
s++;
}
p->next="\0";
returnh;
}
main()
{charstr[]="linklist";
structnode*head;
head=CreatList(str);
…
}
(1)
A.char*B.structnodeC.structnode*D.char
47.若有語(yǔ)句int*point,a=4;和point=&a;下面均代表地址的一組選項(xiàng)是()。
A.a,point,*&a
B.&*a,&a,*point
C.*&point,*point,&a
D.&a,&*point,point
48.下面程序的功能是輸出以下形式的金字塔圖案:****************main(){inti,j;for(i=1;i<=4;i++){for(j=1;j<=4-i;j++)printf("");for(j=1;j<=();j++)printf("*");printf("\n");}}在下劃線處應(yīng)填入的是()。
A.iB.2*-1C.2*i+1D.i+2
49.下列程序執(zhí)行后的輸出結(jié)果是voidfunc(int*a,intb[]){b[0]=*a+6;}main(){inta,b[5];a=0;b[0]=3;func(&a,b);printf("%d\n",b[0]);}
A.6B.7C.8D.9
50.設(shè)語(yǔ)句inta=3;,當(dāng)執(zhí)行了以下語(yǔ)句后,變量a的值是______。a+=a-=a*a;
A.3B.0C.9D.-12
51.下列循環(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
52.以下程序的輸出結(jié)果是()main(){staticchara[10]={"Chinese"};printf("%d",strlen(a));}
A.7B.2C.9D.10
53.在下列敘述中,正確的一條是______。
A.對(duì)while循環(huán)、do-while循環(huán)和for循環(huán),可以用continue語(yǔ)句跳出循環(huán)
B.表達(dá)式1+2<<3和sizeof(3.8)的結(jié)果分別為24和8
C.函數(shù)fputc(c,stdout)與putchar(c)的結(jié)果相同
D.在有參函數(shù)中,定義函數(shù)中指定的形參變量在程序一開(kāi)始執(zhí)行時(shí)便分配內(nèi)存單元
54.以下4組用戶定義標(biāo)識(shí)符中,全部合法的一組是()A._mainencludesin
B.If-maxturbo
C.txtREAL3COM
D.intk_2_001
55.下列有關(guān)數(shù)據(jù)庫(kù)的描述,正確的是______。
A.數(shù)據(jù)庫(kù)是一個(gè)DBF文件B.數(shù)據(jù)庫(kù)是一個(gè)關(guān)系C.數(shù)據(jù)庫(kù)是一個(gè)結(jié)構(gòu)化的數(shù)據(jù)集合D.數(shù)據(jù)庫(kù)是一組文件
56.在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是()。
A.數(shù)據(jù)庫(kù)系統(tǒng)B.文件系統(tǒng)C.人工管理D.數(shù)據(jù)項(xiàng)管理
57.若有以下定義:floatx;inta,b,c=2;,則正確的switch語(yǔ)句是()
A.switch(x){case1.0:printf("*\n");case2.0:printf("**\n");}
B.switch(int(x)){case1:printf("*\n");case2:printf("**\n");}
C.switch(a+b){case1:printf("*\n");case1+2:printf("**\n");}
D.switch(a+B){case1:printf("*\n");casec:printf("**\n");}
58.若有定義:inta[2][3];,以下選項(xiàng)中對(duì)a數(shù)組元素正確引用的是A.a[2][!1]B.a[2][3]C.a[0][3]D.a[1>2][!1]
59.有如下程序main(){intx=1,a=0,b=0;switch(x){case0:b++;case1:a++;case2:a++;b++;}printf("a%d,b=%d\n",a,B);}該程序的輸出結(jié)果是______。
A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=2
60.有如下程序#defineN2#defineMN+1#defineNUM2*M+1main(){inti;for(i=1;i<=NUM;i++)printf("%d\n"i)}該程序中的for循環(huán)執(zhí)行的次數(shù)是______。
A.5B.6C.7D.8
四、選擇題(20題)61.下列敘述中錯(cuò)誤的是()。
A.列表框和組合框都有List屬性
B.列表框有Selected屬性,而組合框沒(méi)有
C.列表框和組合框都有Style屬性
D.組合框有Text屬性,而列表框沒(méi)有
62.
63.有以下程序:main(){inti=1,j=1,k=2;if((j++‖k++)&&i++)printf("%d,%d,%d\n",i,j,k);}執(zhí)行后的輸出結(jié)果是______。
A.1,1,2B.2,2,1C.2,2,2D.2,2,3
64.以下程序段完全正確的是()。
A.int*p;scanf(”%d”,&p);
B.int*p;scanf(”%d”,P);
C.intk,*P:&k;scanf(’’%d”,P);
D.intk,*p;*P=&k;scanf(”%d”,P);
65.若有定義語(yǔ)句:inta[2][3],*p[3];,則以下語(yǔ)句中正確的是()。
A.p=a;B.p[0]=a;C.p[o]=&a[1][2];D.p[1]=&a;
66.有如下程序:main(){intn[5]={0,0,0},i,k=2;for(i=0;i&printf("%d\n",n[k]););}該程序的輸出結(jié)果是()。A.不確定的值B.2C.1D.0
67.兩個(gè)或兩個(gè)以上模塊之間關(guān)聯(lián)的緊密程度稱為()。
A.耦合度B.內(nèi)聚度C.復(fù)雜度D.數(shù)據(jù)傳輸特性
68.已有定義:charc;,程序前面已在命令行中包含ctype.h文件,不能用于判斷e中的字符是否為大寫字母的表達(dá)式是()。
A.isupper(c)
B.A<=c<=Z
C.A<=cc<=Z
D.c<=(z-32)(a-32)<=c
69.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.2344B.4332C.1234D.1123
70.以下選項(xiàng)錯(cuò)誤的是
71.
對(duì)兩個(gè)數(shù)組a和b進(jìn)行下列初始化:
charm[]1="l234567":
charn[]={1,2,3,4,5,6,7);
則下列敘述正確的是()。
A.數(shù)組m與數(shù)組n完全相同
B.數(shù)組m與數(shù)組n長(zhǎng)度相同
C.數(shù)組m比數(shù)組n長(zhǎng)1
D.數(shù)組m與數(shù)組n中都存放字符串
72.有下列程序:
main
{inty=10;
do{y--;}while(--y);
printf("%d\n",--y);
)
當(dāng)執(zhí)行程序時(shí),輸出的結(jié)果是()。
A.-1B.1C.4D.0
73.
74.語(yǔ)句int(*ptr)的含義是()。
A.ptr是一個(gè)返回值為int的函數(shù)
B.ptr是指向int型數(shù)據(jù)的指針變量
C.ptr是指向函數(shù)的指針,該函數(shù)返回一個(gè)int型數(shù)據(jù)
D.ptr是一個(gè)函數(shù)名,該函數(shù)的返回值是指向int型數(shù)據(jù)的指針
75.
76.
77.
78.
79.
80.有三個(gè)關(guān)系R,S和T如下:
其中關(guān)系T由關(guān)系R和S通過(guò)某種操作得到,該操作為()。A.選擇B.投影C.交D.并
五、程序改錯(cuò)題(1題)81.已知一個(gè)數(shù)列從0項(xiàng)開(kāi)始的前3項(xiàng)為0,0,1,以后的各項(xiàng)都是其相鄰的前3項(xiàng)之和。下列給定的程序中,函數(shù)proc()的功能是:計(jì)算并輸出該數(shù)列前n項(xiàng)的和sum。n的值通過(guò)形參傳人。例如,當(dāng)n-20時(shí),程序的輸出結(jié)果應(yīng)為42762.000000。請(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)編寫函數(shù)fun(),其功能是找出一維整型數(shù)組元素中最大的值及其所在的下標(biāo),并通過(guò)形參傳回。數(shù)組元素中的值已在主函數(shù)中賦予。主函數(shù)中x是數(shù)組名,n表示x中的元素個(gè)數(shù),max存放最大值,index存放最大值所在元素的下標(biāo)。注意:部分源程序給出如下。請(qǐng)勿改動(dòng)主函數(shù)main()和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)fun()的花括號(hào)中填入你編寫的若干語(yǔ)句。試題程序:#include<time.h>#include<stdlib.h>#include<stdio.h>voidfun(inta[],intn,int*max,int*d){}voidmain(){ inti,x[20],max,index,n=10; srand((unsigned)time(NULL)); for(i=0;i<=n;i++) { x[i]=rand()%50; printf(“%4d”,x[i]); /*輸出一個(gè)隨機(jī)數(shù)組*/ } printf(n\nH); fun(xfnf&max,&index); printf(“Max=%5d,Index=%4d\n”,max,index);}
參考答案
1.C
2.B當(dāng)b=1時(shí),a=1,第二個(gè)if語(yǔ)句成立,此時(shí)a=6,返回for循環(huán);當(dāng)b=2,兩個(gè)if語(yǔ)句都為假,此時(shí)a=3,再返回循環(huán);當(dāng)b=3,第二個(gè)if成立,此時(shí)a=8,繼續(xù)循環(huán);當(dāng)b=4,第一個(gè)if成立,退出for循環(huán)體時(shí)b為4,a為8。
3.B棧是限定只能在表的一端進(jìn)行插入和刪除操作的線性表,入棧和出棧都是在棧頂進(jìn)行,它們的操作特點(diǎn)是先進(jìn)后出,因此具有記憶作用。棧可以采用順序存儲(chǔ),也可以采用鏈?zhǔn)酱鎯?chǔ)。
4.A
5.D解析:關(guān)系模型中包括關(guān)系的數(shù)據(jù)結(jié)構(gòu)、關(guān)系的操縱和關(guān)系中的數(shù)據(jù)約束。關(guān)系完整性約束即數(shù)據(jù)完整性,包括實(shí)體完整性、參照完整性和用戶自定義完整性。
6.D本題考查if-else語(yǔ)句的使用。if-else語(yǔ)句可以在條件為“真”或?yàn)椤凹佟睍r(shí)執(zhí)行指定的動(dòng)作,由if引導(dǎo)條件為“真”時(shí)執(zhí)行的操作;由else引導(dǎo)條件為“假”時(shí)執(zhí)行的操作。else語(yǔ)句要與上面最近的if語(yǔ)句進(jìn)行匹配,如果要嵌套調(diào)用if-else語(yǔ)句,需要將嵌套部分用{}括起來(lái),避免程序報(bào)錯(cuò)。題目中給出了一個(gè)if語(yǔ)句和一個(gè)if-else語(yǔ)句,if-else語(yǔ)句為第一個(gè)if語(yǔ)句的子語(yǔ)句。首先執(zhí)行外層if語(yǔ)句,執(zhí)行條件為x>y,由于x=1,y=2,故該條件為假,不執(zhí)行if的子語(yǔ)句,直接執(zhí)行語(yǔ)句printf("%d\\n",x++);,該語(yǔ)句先輸出x的值,然后進(jìn)行x++操作。x的初始值為1,輸出結(jié)果為1。
7.D第1次循環(huán),a的值為1,滿足條件,執(zhí)行“b+=a;”與“a+=2;”,則b的值變?yōu)?,a的值變?yōu)?。執(zhí)行“a++”,a的值為4,滿足條件進(jìn)入第2次循環(huán),執(zhí)行完循環(huán)體后,b的值為7,a的值為6。執(zhí)行“a++”,a的值為7,滿足條件進(jìn)入第3次循環(huán),執(zhí)行完循環(huán)體后,b的值為14,a的值為9。執(zhí)行“a++”,a的值為10。條件不滿足,退出循環(huán)。故本題答案為D選項(xiàng)。
8.B解析:字符串常量是由雙引號(hào)括起來(lái)的一串字符,其中的雙引號(hào)不可缺少。由此可知,選項(xiàng)A)、C)、D)都是含法的字符串常量,而選B)是一個(gè)字符常量。
9.B解析:字符串連接函數(shù)strcat的調(diào)用形式如下:strcat(s1,s2)。此函數(shù)用來(lái)把s2所指字符串的內(nèi)容連接到s1所指的字符串后面,并自動(dòng)覆蓋s1串末尾的尾標(biāo),函數(shù)返回s1的地址值。
10.D
11.C解析:函數(shù)slzeof(a)的功能是求出字符串a(chǎn)中的字符占用存儲(chǔ)空間的大小,由于字符數(shù)組a有長(zhǎng)度為7,所以i=7;函數(shù)strlen(a)的功能是:求出字符串a(chǎn)的長(zhǎng)度。而每個(gè)字符串都以'\\0'為字符串的結(jié)束標(biāo)記,所以j的值等于2。
12.A解析:p[0]存放的是“BOOL\\0”的首地址:p[1]存放的是“OPK\\0”的首址等。在printf語(yǔ)句中輸出的*p[i]表示p[i]字符串的第—個(gè)字符。在for循環(huán)中,i的初值為3,那么輸出的第—個(gè)字符為“S”,接著兩次i--,則輸出的值為*p[1],即字符“O”,所以本題的輸出為SO。
13.C首先計(jì)算表達(dá)式“a=9”;再計(jì)算表達(dá)式“a-=9”;即“a=a-9”,結(jié)果為0;最后計(jì)算表達(dá)式“a+=0”,即“a=a+0”,所以最終結(jié)果為0。故本題答案為C選項(xiàng)。
14.A語(yǔ)句“pc=ch;”使得指針變量pc指向字符數(shù)組ch的首地址,即指向字符‘u’。而“pc+5”指向的是指針向后移動(dòng)5位所指的字符,即指向字符‘z’,所以輸出的“*(pc+5)”的值為‘z’。故本題答案為A選項(xiàng)。
15.A
\n本題考查函數(shù)的調(diào)用,從主函數(shù)傳遞到調(diào)用函數(shù)中,*a的值為0,因此當(dāng)執(zhí)行完調(diào)用函數(shù)后,b[0]的值為6。
\n
16.C\n\tC。【解析】二分法查找只適用于順序存儲(chǔ)的有序表,對(duì)于長(zhǎng)度為n的有序線性表,最壞情況只需比較log2n次。
17.C因?yàn)閏語(yǔ)言數(shù)據(jù)進(jìn)行計(jì)算時(shí)數(shù)據(jù)類型會(huì)由低級(jí)向高級(jí)進(jìn)行隱式轉(zhuǎn)化,sqrt函數(shù)得到的是double類型,比其他的int數(shù)據(jù)類型高,所以整個(gè)結(jié)果得到的是double類型。
18.A答案A
解析:一個(gè)C程序可以有一個(gè)或多個(gè)程序文件,也可以有一個(gè)或多個(gè)函數(shù),所以一個(gè)C語(yǔ)言程序可以實(shí)現(xiàn)多種算法。
19.A本題由fun函數(shù)可知,執(zhí)行for循環(huán),當(dāng)i=0時(shí),b[0]=a[0][0]-a[0][3]=1-4=-3;當(dāng)i=1時(shí),b[1]=a[1][1]-a[1][2]=6-7=-1;當(dāng)i=2時(shí),b[2]=a[2][2]-a[2][1]=11-10=1;當(dāng)i=3時(shí),b[3]=a[3][3]-a[3][0]=16-13=3。主函數(shù)中輸出y數(shù)組元素的值為:-3,-1,1,3。故本題答案為A選項(xiàng)。
20.A
21.循環(huán)鏈表循環(huán)鏈表解析:在循環(huán)鏈表中,由于設(shè)置了一個(gè)頭結(jié)點(diǎn),因此在任何情況下,循環(huán)鏈表中至少有一個(gè)結(jié)點(diǎn)存在,從而使空表與非空表的運(yùn)算統(tǒng)一。
22.024
23.
24.時(shí)間時(shí)間解析:算法的復(fù)雜度主要指時(shí)間復(fù)雜度和空間復(fù)雜度。所謂算法的時(shí)間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量;算法的空間復(fù)雜度,一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。
25.數(shù)據(jù)定義語(yǔ)言數(shù)據(jù)定義語(yǔ)言解析:在數(shù)據(jù)庫(kù)管理系統(tǒng)提供的數(shù)據(jù)定義語(yǔ)言,數(shù)據(jù)操縱語(yǔ)言和數(shù)據(jù)控制語(yǔ)言中,數(shù)據(jù)定義語(yǔ)言負(fù)責(zé)數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構(gòu)建,數(shù)據(jù)操縱語(yǔ)言負(fù)責(zé)數(shù)據(jù)的操縱,包括查詢及增、刪、改等操作,數(shù)據(jù)控制語(yǔ)言負(fù)責(zé)數(shù)據(jù)完整性、安全性的定義與檢查以及并發(fā)控制、恢復(fù)等功能。
26.1.09877e+010
27.x<10x>=1
28.11解析:本題考查兩個(gè)知識(shí)點(diǎn):一是x/y的值為整型,即為0;二是數(shù)1是double類型。
29.k-1k,-1解析:顛倒一個(gè)字符串中的字符,就是首尾對(duì)應(yīng)的元素兩兩交換。簡(jiǎn)單地可用兩個(gè)游標(biāo)變量i和j,i是前端元素的下標(biāo),j是后端元素的下標(biāo),交換以這兩個(gè)變量值為下標(biāo)的元素str[i]和str[j]。開(kāi)始時(shí),i的值為0,j的值為字符串末元素的下標(biāo)(字符串長(zhǎng)度減1)。每次交換后,i增1,j減1。繼續(xù)交換的條件是str[i]位于str[j]的前面,即i<j。字符串末元素的下標(biāo)是它的長(zhǎng)度減1,所以在第二個(gè)空框處應(yīng)填入-1。程序?yàn)榱私粨Qstr[i]和str[j],使用了變量k,該變量應(yīng)在程序的變量定義部分中一起定義,所以在第一個(gè)空框處應(yīng)填入k。
30.00解析:函數(shù)getchar()是從鍵盤得到用戶輸入的一個(gè)字符。用戶輸入的第1個(gè)字符是a,不管后面輸入的是什么ch的值都是'a',因此條件(ch=getchar())=='e'為假,這個(gè)循環(huán)不會(huì)被執(zhí)行。
31.關(guān)系模型關(guān)系模型解析:數(shù)據(jù)庫(kù)管理系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層系統(tǒng)管理軟件,是一種系統(tǒng)軟件,是用戶與數(shù)據(jù)庫(kù)之間的一個(gè)標(biāo)準(zhǔn)接口。其總是基于某種數(shù)據(jù)模型,可以分為層次模型、網(wǎng)狀模型和關(guān)系模型。
32.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。
33.B
34.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)解析:Jackson方法是—‘種面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化方法。
35.概念設(shè)計(jì)階段(數(shù)據(jù)庫(kù)概念設(shè)計(jì)階段)概念設(shè)計(jì)階段(數(shù)據(jù)庫(kù)概念設(shè)計(jì)階段)
36.BCDCDDBCD\r\nCD\r\nD解析:本題考查指向字符串的指針的運(yùn)算方法。指針變量p首先指向字符串中的第一個(gè)字符A,執(zhí)行p=s+1后,p指向字符串中的第二個(gè)字符B,然后輸出值“BCD”并換行,依次執(zhí)行循環(huán)語(yǔ)句。
37.*pmax=*px*pmax=*px解析:首先將變量x的值放到max中,然后依次和變量y、z進(jìn)行比較。若有比max大的數(shù),將該數(shù)存放到max中,這樣最后在max中的值就是x、y、z中的最大值。
38.B66B66解析:字符B的ASCII碼值為66,因此,按%c形式輸出B,按%d形式輸出66,輸出結(jié)果為:B66。
39.220220解析:根據(jù)賦值運(yùn)算符“自右至左”的結(jié)合順序,程序中賦值表達(dá)式x=f*=n/=(c=50)的求解步驟為:首先計(jì)算n/=(c=50),即n=n/c=100/50=2;然后計(jì)算f*=n,即f=f*n=10*2=20.000000,由此得到x的值為20.000000。
40.消息消息解析:對(duì)象之間進(jìn)行通信的構(gòu)造叫做消息,它請(qǐng)求對(duì)象執(zhí)行某一處理或回答某一要求的信息,它統(tǒng)一了數(shù)據(jù)流和控制流。
41.B
\n本題考查函數(shù)調(diào)用的基本概念。調(diào)用函數(shù)時(shí),實(shí)參的形式可以是具體的數(shù)值,也可以是表達(dá)式。實(shí)參將數(shù)值或表達(dá)式的值傳遞給形參,因而兩者的類型必須保持一致;形參在運(yùn)算過(guò)程中會(huì)發(fā)生改變,但不一定會(huì)影響到實(shí)參值,所以可知兩者不共用內(nèi)存單元。
\n
42.C解析:本題考查函數(shù)調(diào)用時(shí)的參數(shù)傳遞。函數(shù)point的參數(shù)為字符指針,當(dāng)執(zhí)行函數(shù)point時(shí),剛開(kāi)始指針p指向“a”,經(jīng)過(guò)+3操作后,指針p指向“f”,所以最后的輸出結(jié)果是f。
43.A解析:由于共用體變量中的所有成員共享存儲(chǔ)空間,賦值后,w.c字符數(shù)組的值即是整型變量a的值。注意:共用體變量的定義、初始化及其成員的引用。
44.B解析:選項(xiàng)A和D中第—個(gè)字母大寫,不正確;選項(xiàng)C是PASCAL中的整型關(guān)鍵字,不是C語(yǔ)言中的關(guān)鍵字。
45.A解析:本題定義了一個(gè)結(jié)構(gòu)體類型并白定義類型名為STD,用戶自定義類型后,就可以利用它進(jìn)行變量與數(shù)組的定義。定義的方法,與C語(yǔ)言中其它類型的定義完全一樣,定義結(jié)構(gòu)型數(shù)組并賦初值時(shí),每個(gè)元素用一對(duì)“{”和“廠括起來(lái),字符型元素用…”括起來(lái),選項(xiàng)A、B、C、D中只有選項(xiàng)A符合條件。所以,A選項(xiàng)為所選。
46.C
47.D本題主要考查指針變量對(duì)數(shù)值的引用。在題目中,首先定義了整型指針變量point和一個(gè)整型變量a,變量a的初值為4,然后是指針變量指向a,或者說(shuō)將變量a所在存儲(chǔ)單元的地址值賦給指針變量。
在選項(xiàng)A中,很顯然,不全是地址,只有point表示地址,而*&a等價(jià)于*(&a),表示取一個(gè)數(shù)值。
在選項(xiàng)B中,也不都表示地址,其中*point表示數(shù)值,其他兩個(gè)表示地址。
在選項(xiàng)C中,與選項(xiàng)B類似,其中的*point表示數(shù)值。
在選項(xiàng)D中,都表示地址,是題目的選擇答案。
48.B解析:觀察可知圖形共4行,主函數(shù)中通過(guò)一個(gè)for5循環(huán)循環(huán)4次,輸出4行。第1行輸出3個(gè)空格和1個(gè)*,第2行輸出2個(gè)空格和3個(gè)*,第3行輸出1個(gè)空格和5個(gè)*,第4行輸出7個(gè)*,主函數(shù)中通過(guò)第2個(gè)循環(huán)控制每行的輸出空格數(shù),第3個(gè)for循環(huán)控制輸出*的個(gè)數(shù),總結(jié)規(guī)律:每行輸出*的個(gè)數(shù),總比前一行的多2個(gè),且第1行的個(gè)數(shù)為1,可以斷定每行輸出*的個(gè)數(shù)組成了一個(gè)公差為2的等差數(shù)列,所以每行輸出。的個(gè)數(shù)即該等差數(shù)列的通項(xiàng),故該空白處應(yīng)該填寫2*i-1,所以,4個(gè)選項(xiàng)中選項(xiàng)B符合題意。
49.A解析:函數(shù)的參數(shù)不僅可以是整型、實(shí)型、字符型等數(shù)據(jù),還可以是指針型。它的作用是將一個(gè)變量的地址傳遞到另一個(gè)函數(shù)中。當(dāng)數(shù)組名作參數(shù)時(shí),如果形參數(shù)組中的各元素的值發(fā)生變化,實(shí)參數(shù)組元素的值也將隨之發(fā)生變化。
50.B
51.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)。
52.A
53.C解析:選項(xiàng)A錯(cuò)誤,continue語(yǔ)句只能結(jié)束本次循環(huán),不能結(jié)束整個(gè)循環(huán)。要跳出循環(huán)可用break語(yǔ)句。選項(xiàng)B錯(cuò)誤,表達(dá)式1+2<<3等價(jià)于(1+2)<<3,即0000000000000011向右移3位,移后變?yōu)?000000000000000,即0。選項(xiàng)C正確,函數(shù)fputc的操作對(duì)象是文件,而putchar是直接向標(biāo)準(zhǔn)輸出設(shè)備輸出字符。標(biāo)準(zhǔn)輸出設(shè)備是一個(gè)特殊文件,即設(shè)備文件,文件型指針指向標(biāo)準(zhǔn)輸出設(shè)備,因而功能相同。選項(xiàng)D錯(cuò)誤,在定義函數(shù)中指定的形參變量,在未出現(xiàn)函數(shù)調(diào)用時(shí),它們并不占內(nèi)存中的存儲(chǔ)單元。
54.A解析:標(biāo)識(shí)符是以字母或下劃線開(kāi)頭,由字母、數(shù)字或下劃線組成的字符序列(例如,-max含非法字符-),并且用戶標(biāo)識(shí)符不能與C語(yǔ)言中的32個(gè)關(guān)鍵字同名(例如,int是關(guān)鍵字,不是合法的用戶標(biāo)識(shí)符)。選項(xiàng)B中-max不是字母、數(shù)字或下劃線組成的字符序列,故選項(xiàng)B不正確;選項(xiàng)C中3COM不是由字母或下劃線開(kāi)頭,故選項(xiàng)C不正確;選項(xiàng)D中int為C語(yǔ)言中的關(guān)鍵字,故選項(xiàng)D不正確;選項(xiàng)A中全部為合法的標(biāo)識(shí)符,所以,4個(gè)選項(xiàng)中選項(xiàng)A符合題意。
55.C解析:數(shù)據(jù)庫(kù)(Database,簡(jiǎn)稱DB)是數(shù)據(jù)的集合,它具有統(tǒng)一的結(jié)構(gòu)形式并存放于統(tǒng)一的存儲(chǔ)介質(zhì)內(nèi),是多種應(yīng)用數(shù)據(jù)的集成,并可被各個(gè)應(yīng)用程序所共享。數(shù)據(jù)庫(kù)中的數(shù)據(jù)具有“集成”、“共事”之特點(diǎn)。
56.A在數(shù)據(jù)管理技術(shù)的發(fā)展過(guò)程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是數(shù)據(jù)庫(kù)系統(tǒng)這一階段。數(shù)據(jù)庫(kù)系統(tǒng)階段用數(shù)據(jù)模型來(lái)表示復(fù)雜的數(shù)據(jù),有較高的數(shù)據(jù)獨(dú)立性。數(shù)據(jù)庫(kù)系統(tǒng)為用戶提供了方便的用戶接口,用戶既可使用查詢語(yǔ)言或終端命令操作數(shù)據(jù)庫(kù),也可以用程序方式來(lái)操作。數(shù)據(jù)庫(kù)管理系統(tǒng)提供了數(shù)據(jù)控制功能。
57.C
58.D解析:a是一個(gè)2行3列的二維數(shù)組,行下標(biāo)和列下標(biāo)都是從0開(kāi)始的,數(shù)組中的元素為a[0][0]、a[0][1]、a[0][2]、a[1][0]、a[1][1]、a[1][2],行下標(biāo)最大值為1,列下標(biāo)最大值為2,因此選項(xiàng)A、B、C都是錯(cuò)誤的引用。計(jì)算選項(xiàng)D中數(shù)組元素的下標(biāo)后得a[0][0],為正確的引用。
59.A解析:在這個(gè)switch語(yǔ)句中,因?yàn)閤的值為1,所以執(zhí)行case1:后面的a++,這樣a=1。但又由于其下沒(méi)有break語(yǔ)句,所以其后面的語(yǔ)句“a++;b++”也將被執(zhí)行,這樣一來(lái),a=2,b=1。
60.B解析:該題目測(cè)試考生對(duì)宏替換的理解。這是一種簡(jiǎn)單的
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 付費(fèi)推廣活動(dòng)方案
- 仙海公司團(tuán)建活動(dòng)方案
- 代表旁聽(tīng)庭審活動(dòng)方案
- 以舊換新活動(dòng)活動(dòng)方案
- 企業(yè)體育活動(dòng)方案
- DB61T-草地分類指南
- 企業(yè)中式活動(dòng)策劃方案
- 企業(yè)保衛(wèi)部門活動(dòng)方案
- 企業(yè)公司年會(huì)策劃方案
- 企業(yè)創(chuàng)始人培訓(xùn)活動(dòng)方案
- 明清時(shí)期科技與文化課件統(tǒng)編版七年級(jí)歷史下冊(cè)
- 2025財(cái)務(wù)部上半年工作總結(jié)與風(fēng)險(xiǎn)控制
- 2025年網(wǎng)絡(luò)安全與信息技術(shù)考試試卷及答案
- 《學(xué)前兒童語(yǔ)言教育》課件-第2章 學(xué)前兒童語(yǔ)言的獲得與發(fā)展
- 神奇校車考試題及答案
- 2025-2030中國(guó)造紙行業(yè)市場(chǎng)前景趨勢(shì)及競(jìng)爭(zhēng)格局與投資研究報(bào)告
- 腸梗阻患者護(hù)理查房
- 無(wú)人機(jī)維護(hù)保養(yǎng)知識(shí)試題及答案
- 2025-2030中國(guó)體外診斷(IVD)行業(yè)市場(chǎng)發(fā)展分析及前景趨勢(shì)與投資研究報(bào)告
- 2024年吉林吉林事業(yè)單位招聘考試真題答案解析
- 香港應(yīng)聘簡(jiǎn)歷模板
評(píng)論
0/150
提交評(píng)論