




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
2022-2023年四川省攀枝花市全國(guó)計(jì)算機(jī)等級(jí)考試C語(yǔ)言程序設(shè)計(jì)真題(含答案)學(xué)校:________班級(jí):________姓名:________考號(hào):________
一、單選題(20題)1.可用作C語(yǔ)言用戶標(biāo)識(shí)符的一組標(biāo)識(shí)符是()。A.voiddefine+WORDB.a3_b3_123YNC.for-abcCaseD.2aDOsizeof
2.一個(gè)關(guān)系中屬性個(gè)數(shù)為1時(shí),稱此關(guān)系為()。
A.對(duì)應(yīng)關(guān)系B.單一關(guān)系C.一元關(guān)系D.二元關(guān)系
3.下面程序的運(yùn)行結(jié)果是()。#include<stdio.h>main(){inty=10;do{y--;}while(--y);printf("%d\n",y--);}
A.-1B.1C.8D.0
4.是哈希查找的沖突處理方法()。
A.求余法B.平均取中法C.二分法D.開放地址法
5.設(shè)有定義“doublea;chard;floatb;”,若想把1.2賦給變量a、字符‘k’賦給變量d、3.4賦給變量b,程序運(yùn)行時(shí)通過(guò)鍵盤輸入1.2k3.4并按<Enter>鍵,則以下正確的讀入語(yǔ)句是()。A.scanf(“%lf%c%f”,&a,&d,&b);
B.scanf(“%lf%c%f”,&a,&d,&b);
C.scanf(“%f%c%f”,&a,&d,&b);
D.scanf(“%f%c%f”,&a,&d,&b);
6.第
4
題
棧底至棧頂依次存放元素A、B、C、D,在第五個(gè)元素E入棧前,棧中元素可以出棧,則出棧序列可能是
A.ABCEDB.DCBEAC.DBCEAD.CDABE
7.
下述程序的輸出結(jié)果是()。
#include<stdio.h>
voidmain
{intb[6]={2,4,6,8,10,12);
int*p=b,**q=&p;
printf("%d,",*(p++));
printf("%d,",**q);
}
A.4,4B.2,2C.4,5D.2,4
8.以下關(guān)于C語(yǔ)言的敘述中正確的是()。
A.C語(yǔ)言中的注釋不可以?shī)A在變量名或關(guān)鍵字的中間
B.C語(yǔ)言中的變量可以在使用之前的任何位置進(jìn)行定義
C.在C語(yǔ)言算術(shù)表達(dá)式的書寫中,運(yùn)算符兩側(cè)的運(yùn)算數(shù)類型必須一致
D.C語(yǔ)言的數(shù)值常量中夾帶空格不影響常量值的正確表示
9.以下說(shuō)法錯(cuò)誤的是:()
A.全局變量就是在函數(shù)外定義的變量,因此又叫做外部變量
B.一個(gè)函數(shù)中既可以使用本函數(shù)中的局部變量,也可以使用全局變量
C.局部變量的定義和全局變量的定義的含義不同
D.如果在同一個(gè)源文件中,全局變量和局部變量同名,則在局部變量的作用范圍內(nèi),全局變量通常不起作用
10.用不帶頭結(jié)點(diǎn)的單鏈表存儲(chǔ)隊(duì)列,其頭指針指向隊(duì)頭結(jié)點(diǎn),尾指針指向隊(duì)尾結(jié)點(diǎn),則在進(jìn)行出隊(duì)操作時(shí)()。
A.僅修改隊(duì)頭指針B.僅修改隊(duì)尾指針C.隊(duì)頭、隊(duì)尾指針都可能要修改D.隊(duì)頭、隊(duì)尾指針都要修改
11.有一個(gè)100×90的稀疏矩陣,非0元素有10,設(shè)每個(gè)整型數(shù)占2個(gè)字節(jié),則用三元組表示該矩陣時(shí),所需的字節(jié)數(shù)是()。
A.20B.66C.18000D.33
12.算法分析的目的是()。
A.找出數(shù)據(jù)結(jié)構(gòu)的合理性B.找出算法中輸入和輸出之間的關(guān)系C.分析算法的易懂性和可靠性D.分析算法的效率以求改進(jìn)
13.某完全二叉樹有256個(gè)節(jié)點(diǎn),則該二叉樹的深度為()。
A.7B.8C.9D.10
14.以下選項(xiàng)中合法的C語(yǔ)言常量是()。
A.‘C-STR’B.2014.1C.”\1.0D.2EK
15.程序運(yùn)行后的輸出結(jié)果是()。#include<stdio.h>#include<stdlib.h>main(){int*a,*b,*c;a=b=c(int*)malloc(sizeof(int));*a=1;*b=2;*c=3;a=b;printf(“%d,%d,%d\n”,*a,*b,*c);}A.1.1.3B.2.2.3C.1.2.3D.3.3.3
16.下述函數(shù)功能是______。intfun(char*x){char*y=x;while(*y++);returny-x-1;}
A.求字符串的長(zhǎng)度B.求字符串存放的位置C.比較兩個(gè)字符串的大小D.將字符串x連接到字符串y后面
17.索引屬于()。
A.模式B.內(nèi)模式C.外模式D.概念模式
18.
19.依次插入序列(50,72,43,85,75,20,34,45,65,30)后建立的二叉搜索樹中,查找元素30要進(jìn)行()次元素間的比較。
A.4B.5C.7D.10
20.歸并排序采用的算法設(shè)計(jì)方法屬于()
A.歸納法B.分治法C.貪心法D.回溯方法
二、2.填空題(20題)21.以下程序運(yùn)行后的輸出結(jié)果是【】。
main()
{inti,n[]={0,0,0,0,0};
for(i=1;i<=4;i++)
{n[i]=n[i-1]*2+1;
printf("%",n[i]);
}
22.以下isprime函數(shù)的功能是判斷形參a是否為素?cái)?shù),是素?cái)?shù),函數(shù)返回1,否則返回0。請(qǐng)?zhí)羁铡?/p>
intisprime(inta)
for(i=2;i<=a/2;i++)
if(a%i==0)[8];
[9];
23.設(shè)有以下定義和語(yǔ)句,則*(*(p+2)+1)的值【】。
inta[3][2]={10,20,30,40,50,60},(*p)[2];
p=a;
24.棧的3種基本運(yùn)算是:入棧、退棧和______。
25.常用的黑箱測(cè)試有等價(jià)類劃分法、【】和錯(cuò)誤推測(cè)法3種。
26.算法的復(fù)雜度主要包括時(shí)間復(fù)雜度和______復(fù)雜度。
27.下列程序的功能是:求出ss所指字符串中指定字符的個(gè)數(shù),并返回此值。
例如,若輸入字符串123412132,指定字符1,則輸出3。請(qǐng)?zhí)羁铡?/p>
#include<stdio.h)
#deftneM81
intfun(char*ss,charc)
{inti=0;
for(;【】;ss++)
if(*ss==c)i++;
returni;
}
main()
{chara[M],ch;
printf("\nPleaseenterastring:");gets(a);
printf("\nPleaseenterachar:");ch=getchar();
printf("\nThenumberofthecharis:%d\n",fun(a,ch));
}
28.設(shè)有下列宏定義:
#defineA2
#defineB(A+3)
則執(zhí)行賦值語(yǔ)句"k=B*20;"(k為int型變量)后,k的值是______。
29.Fibonacci數(shù)列中的頭兩個(gè)數(shù)是1和1,從第3個(gè)數(shù)開始,每個(gè)數(shù)等于前兩個(gè)數(shù)之和。下述程序計(jì)算此數(shù)列的前20個(gè)數(shù),且每行輸出5個(gè)數(shù),請(qǐng)?zhí)羁铡?/p>
#include<stdio.h>
main()
{intf,f1=1,f2=1;
inti;
printf("%6d%6d",f1,f2);
for(i=3;i<=20;i++)
{f=【】;
printf("%6d",f);
if(【】)
printf("\n");
f1=f2;
【】;
}
}
30.在面向?qū)ο蟮姆椒ㄖ?,______描述的是具有相似屬性與操作的一組對(duì)象。
31.fseek函數(shù)的正確調(diào)用形式是【】。
32.數(shù)據(jù)庫(kù)的邏輯模型設(shè)計(jì)階段的任務(wù)是將______轉(zhuǎn)換成關(guān)系模式。
33.在關(guān)系數(shù)據(jù)庫(kù)中把數(shù)據(jù)表示成二維表,每一個(gè)二維表稱為【】。
34.下面程序的運(yùn)行結(jié)果是【】。
main()
{inti=0,j=10,k=2,s=0;
for(;;)
{i+=k;
if(i>j)
{printf("%d\n",s);
break;}
s+=i;}}
35.以下程序運(yùn)行后的輸出結(jié)果是______。
main()
{intx,a=1,b=2,c=3,d=4;
x=(a<b)?a:b;x=(x<c)?x:c;x=(d>x)?x:d;
pfintf("%d\n",x);
}
36.在面向?qū)ο蟮脑O(shè)計(jì)中,用來(lái)請(qǐng)求對(duì)象執(zhí)行某一處理或回答某些信息的要求稱為【】。
37.有以下程序
intfa(intx){returnx*x;}
intfb(intx){retumx*x*x;}
intf(int(*f1)(),int(*f2)(),intx)
{returnf2(x)-f1(x);}
main()
{inti;i=f(fa,fb,2);printf("%d\n",i);}
程序運(yùn)行后,輸出結(jié)果是【】。
38.若a是int型變量,則表達(dá)式(a=2*3,a*2),a+6的值為______。
39.數(shù)據(jù)管理技術(shù)發(fā)展過(guò)程經(jīng)過(guò)人工管理、文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)三個(gè)階段,其中數(shù)據(jù)獨(dú)立性最高的階段是______。
40.若有如下程序:
main()
{ints=8,a=3,b=5,c=6;
if(a>b)s=a;a=b;b=s;
if(a>c){s=a;a=c;b=s);
if(b>c)s=b;b=c;c=s;
printf("%d,%d,%d\n",a,b,c);
}
則程序運(yùn)行后的輸出結(jié)果是【】。
三、1.選擇題(20題)41.以下程序的輸出結(jié)果是______。intx=3;main(){inti;for(i=1;i<x;i++)incre();}incre(){staticintx=1;x*=x+1;printf("%d",x);}
A.33B.22C.26D.25
42.已經(jīng)定義ch為字符型變量,以下賦值表達(dá)式中錯(cuò)誤的是______。
A.ch='\'B.ch=62+3C.ch=NULLD.ch='\xaa'
43.當(dāng)用“#defineF37.5f”定義后,下列敘述正確的是()。
A.F是float型數(shù)B.F是Char型數(shù)C.F無(wú)類型D.F是字符串
44.下列選項(xiàng)中非法的字符常量是()。
A.'\t'B.'\039'C.','D.'\n'
45.下面描述中,不符合結(jié)構(gòu)化程序設(shè)計(jì)風(fēng)格的是
A.使用順序、選擇和重復(fù)(循環(huán))三種基本控制結(jié)構(gòu)表示程序的控制邏輯
B.注重提高程序的可讀性
C.模塊只有一個(gè)人口和一個(gè)出口
D.使用goto語(yǔ)句
46.在微機(jī)中,應(yīng)用最普遍的字符編碼是()
A.BCD碼B.ASCII碼C.漢字騙碼D.補(bǔ)碼
47.若變量已正確定義,下列正確的程序段是()。
A.while(ch=getchar()=='\N')putchar(ch);
B.while((ch=getchar())=='\n')putchar(ch);
C.while((ch=getchar())!='\N')putchar(ch);
D.while((ch=getchar())!='\n')putchar(ch);
48.已知函數(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ù)
49.有以下程序:main(intargc,char*argv[]){intn=0,i;for(i=1;i<argc;i++)n=n*10+argv[i]-'0';printf("%d\n",n);}編繹連接后生成可執(zhí)行文件tt.exe.若運(yùn)行時(shí)輸入以下命令行tt12345678程序運(yùn)行后的輸出結(jié)果是()。
A.12B.12345C.1.23457e+007D.136
50.假定所有變量均已正確說(shuō)明,下列程序段運(yùn)行后x的值是()a=b=c=0;x=35;if(!a)x--;elesif(b);if(c)x=3;elsex=4;
A.34B.4C.35D.3
51.函數(shù)調(diào)用strcat(strcpy(str1,str2),str3)的功能是()。
A.將字符串str1復(fù)制到字符串str2中后再連接到字符串str3之后
B.將字符串str1連接到字符串str2之后再?gòu)?fù)制到字符串str3之后
C.將字符串str2復(fù)制到字符串str1中后再將字符串str3連接到字符串str1之后
D.將字符串str2連接到字符串str1之后再將字符串str1復(fù)制到字符串str3中
52.以下敘述中錯(cuò)誤的是()。
A.C語(yǔ)言中對(duì)二進(jìn)制文件的訪問(wèn)速度比文本文件快
B.C語(yǔ)言中,隨機(jī)文件以二進(jìn)制代碼形式存儲(chǔ)數(shù)據(jù)
C.語(yǔ)句PILEfp;定義了一個(gè)名為fp的文件指針
D.C語(yǔ)言中的文本文件以ASCII碼形式存儲(chǔ)數(shù)據(jù)
53.有如下程序段:#include<stdio.h>#defineMax(a,b)a>b?a:bmain(){inta=5,b=6,c=4,d;d=c+Max(a,b);printf("%d",d);}其輸出結(jié)果為______。
A.10B.5C.6D.編譯錯(cuò)誤
54.下列哪個(gè)面向?qū)ο蟪绦蛟O(shè)計(jì)不同于其他語(yǔ)言的主要特點(diǎn)
A.繼承性B.消息傳遞C.多態(tài)性D.靜態(tài)聯(lián)編
55.以下定義語(yǔ)句中正確的是
A.chara='A'b='B';
B.floata=b=10.0;
C.inta=10,*b=&a;
D.float*a,b=&a;
56.以下正確的說(shuō)法是
A.定義函數(shù)時(shí),形參的類型說(shuō)明可以放在函數(shù)體內(nèi)
B.return后邊的值不能為表達(dá)式
C.如果函數(shù)值的類型與返回值類型不一致,以函數(shù)值類型為準(zhǔn)
D.如果形參與實(shí)參類型不一致,以實(shí)參類型為準(zhǔn)
57.有以下程序:#include<string.h>main(){charstr[][20]={"Hello","Beijing"}*p=str;printf("%\n",strlen(p+20));}程序運(yùn)行后的輸出結(jié)果是
A.0B.5C.7D.20
58.下列敘述中不正確的是()。
A.在C語(yǔ)言中調(diào)用函數(shù)時(shí),只能把實(shí)參的值傳送給形參,形參的值不能傳送給實(shí)參
B.在C的函數(shù)中,最好使用全局變量
C.外部變量可以在函數(shù)之間傳遞數(shù)據(jù)
D.自動(dòng)變量實(shí)質(zhì)上是一個(gè)函數(shù)內(nèi)部的局部變量
59.下列敘述中正確的是()。
A.線性鏈表的各元素在存儲(chǔ)空間中的位置必須是連續(xù)的
B.線性鏈表的頭元素一定存儲(chǔ)在其他元素的前面
C.線性鏈表中的各元素在存儲(chǔ)空間中的位置不一定是連續(xù)的,但表頭元素一定存儲(chǔ)在其他元素的前面
D.線性鏈表中的各元素在存儲(chǔ)空間中的位置不一定是連續(xù)的,且各元素的存儲(chǔ)順序也是任意的
60.若有如下程序段;intx=3,y=4,z;floata=2.0;z=y%x/a;則執(zhí)行后,z中的值是()
A.4B.3C.0D.0.5
四、選擇題(20題)61.模塊獨(dú)立性是軟件模塊化所提出的要求,衡量模塊獨(dú)立性的一般度量標(biāo)準(zhǔn)是
A.抽象和信息隱蔽B.局部化和封裝化C.內(nèi)聚性和耦合性D.激活機(jī)制和控制方法
62.下列程序的運(yùn)行結(jié)果是()。
A.6B.7C.8D.9
63.
64.
65.
66.下列哪個(gè)屬性是用來(lái)定義內(nèi)聯(lián)樣式的?()
A.fontB.classC.stylesD.style.
67.
下列程序中函數(shù)sort()的功能是對(duì)數(shù)組a中的數(shù)據(jù)進(jìn)行由大到小的排序。
#include<stdio.h>
voidsort(inta[],intll)
{inti,j,t;
for(i=0;i<n-1;i++)
for(j=j+1+1;j<n;j++)
if(a[i]<a[j])
{t=a[i];a[i]=a[j];a[j]=t;
}
}
main()
{inta[10]一{1,2,3,4,5,6,7,8,9,10},i;
sort(&a[1],7);
for(i=0;i<10;i++)printf("%d,",a[i]);
}
程序運(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,8,7,6,5,4,3,2,9,10,
D.1,2,10,9,8,7,6,5,4,3,
68.
69.若有定義語(yǔ)句:“intkl一10,k2=20;”,執(zhí)行表達(dá)式(kl=kl>k2)(k2=k2>
k1)后,kl和k2的值分別為()。
A.0和1B.0和20C.10和1D.10和20
70.在E—R圖中,用來(lái)表示實(shí)體聯(lián)系的圖形是()。
A.橢圓形B.矩形C.菱形D.三角形
71.
72.
73.有如下程序:
main()
{intx=1,a=0,b=0;
switch(x)
{
case0:b++;
casel: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
74.
75.
76.在數(shù)據(jù)管理技術(shù)發(fā)展的三個(gè)階段中,數(shù)據(jù)共享最好的是()。
A.人工管理階段B.文件系統(tǒng)階段C.數(shù)據(jù)庫(kù)系統(tǒng)階段D.三個(gè)階段相同
77.
78.若有語(yǔ)句:Char*line[5];,以下敘述中正確的是()。
A.定義line是一個(gè)數(shù)組,每個(gè)數(shù)組元素是一個(gè)基類型為Char的指針變量
B.定義line是一個(gè)指針變量,該變量可以指向一個(gè)長(zhǎng)度為5的字符型數(shù)組
C.定義line是一個(gè)指針數(shù)組,語(yǔ)句中的*號(hào)稱為間址運(yùn)算符
D.定義line是一個(gè)指向字符型函數(shù)的指針
79.設(shè)有如下程序段
80.第
15
題
非空的循環(huán)單鏈表head的尾結(jié)點(diǎn)(由p所指向),滿足
A.p->next==NULLB.p==NULLC.p->next=headD.p=head
五、程序改錯(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.請(qǐng)編寫函數(shù)proc(),該函數(shù)的功能是:實(shí)現(xiàn)B=A+A',即把矩陣A加上A的轉(zhuǎn)置,存放在矩陣B中。計(jì)算結(jié)果在main()函數(shù)中輸出。
注意:部分源程序給出如下。
請(qǐng)勿改動(dòng)main()函數(shù)和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)proc()的花括號(hào)中填入所編寫的若干語(yǔ)句。
試題程序:
參考答案
1.B
2.C解析:在關(guān)系模型數(shù)據(jù)庫(kù)中,基本結(jié)構(gòu)是二維表,這種二維表稱為關(guān)系。關(guān)系的列稱為屬性,一個(gè)具有N個(gè)屬性的關(guān)系稱為N元關(guān)系。注意:各種關(guān)系查詢語(yǔ)言與過(guò)程性語(yǔ)言和非過(guò)程性語(yǔ)言的關(guān)系,過(guò)程性語(yǔ)言的特點(diǎn)。
3.D解析:本題考查“++”和“--”運(yùn)算符,運(yùn)算符“++”是操作數(shù)加1,而“--”則是操作數(shù)減1。在do-while循環(huán)中,首先執(zhí)行y--,再執(zhí)行--y。當(dāng)y=2時(shí),執(zhí)行y--,y的值變?yōu)?,--y使y值變?yōu)?,循環(huán)結(jié)束。執(zhí)行輸出時(shí),先輸出y的值0,然后執(zhí)行y--,使y的值變?yōu)?1。
4.D
5.B變量a是double類型,輸入格式符為%lf;變量d是char類型,輸入格式符為%c;變量b是float類型,輸入格式符為%f,選項(xiàng)C、D錯(cuò)誤。由于輸入的數(shù)據(jù)之間使用空格間隔,因此scanf函數(shù)中的格式控制字符串中,格式字符之間也要使用空格。故本題答案為B選項(xiàng)。
6.B解析:棧操作原則上“后進(jìn)先出”,棧底至棧頂依次存放元素A、B、C、D,則表明這4個(gè)元素中D是最后進(jìn)棧,B、C處于中間,A最早進(jìn)棧。所以出棧時(shí)一定是先出D,再出C,最后出A。
7.D
\n首先定義了一個(gè)指向一維數(shù)組b的指針P,一個(gè)指向指針P的指針變量q;輸出*(p++)是先輸出*p,即b[O]的值,再將指針P指向數(shù)組的下一個(gè)元素b[1];輸出**q是輸出指針P所指單元的內(nèi)容。
\n
8.B解析:C語(yǔ)言中注釋可以放在任何位置,選項(xiàng)A錯(cuò)誤;C語(yǔ)言中的變量只要在使用之前定義即可,位置可以是使用前的任何位置,故選項(xiàng)B正確;C語(yǔ)言中兩側(cè)數(shù)據(jù)類型可以不一致,系統(tǒng)可進(jìn)行強(qiáng)制類型轉(zhuǎn)換,選項(xiàng)C錯(cuò)誤;C語(yǔ)言數(shù)值常量中不允許存在空格,選項(xiàng)D錯(cuò)誤。
9.A
10.C
11.B
12.D解析:算法分析是指對(duì)一個(gè)算法的運(yùn)行時(shí)間和占用空間做定量的分析,一般計(jì)算出相應(yīng)的數(shù)量級(jí),常用時(shí)間復(fù)雜度和空間復(fù)雜度表示。分析算法的目的就是要降低算法的時(shí)間復(fù)雜度和空間復(fù)雜度;提高算法的執(zhí)行效。率。
13.C
14.B所謂常量,是指在程序運(yùn)行的過(guò)程中,其值不能被改變的量。在C語(yǔ)言中,有整型常量、實(shí)型常量、字符常量和字符串常量等類型。選項(xiàng)A是字符串,需要使用雙引號(hào);選項(xiàng)C不是合法的常量形式;選項(xiàng)D為實(shí)型常量中的指數(shù)形式,但指數(shù)形式e(E)之前必須是數(shù)字,之后必須為整數(shù)。故本題答案為B選項(xiàng)。
15.D
16.A解析:在函數(shù)體內(nèi)定義一字符型指針并指向形參,然后遍歷其中各字符直到NULL,最后返回字符串首尾地址的差值,即字符串的長(zhǎng)度。
17.B解析:內(nèi)模式(InternalSchemA)又稱物理模式(PhysicalSchemA),它給出了數(shù)據(jù)庫(kù)物理存儲(chǔ)結(jié)構(gòu)與物理存取方法,如數(shù)據(jù)存儲(chǔ)的文件結(jié)構(gòu)、索引、集簇及hash等存取方式與存取路徑。數(shù)據(jù)庫(kù)系統(tǒng)的數(shù)據(jù)具有高共享性和低冗余性,但不能完全避免數(shù)據(jù)冗余;數(shù)據(jù)的一致性是指在系統(tǒng)中同一數(shù)據(jù)的不同出現(xiàn)應(yīng)保持相同的值。
18.D
19.B
20.B解析:以2一路歸并排序?yàn)槔M(jìn)行說(shuō)明。2一路歸并是指將兩個(gè)有序序列合并成一個(gè)有序序列,其基本過(guò)程為;從兩個(gè)序列中各取一個(gè)元素,進(jìn)行比較,輸出較小的元素,從較小元素所在序列取下一個(gè)元素,與未輸出的那個(gè)元素比較,輸出較小者。依此類推,直到輸出序列包含了兩個(gè)初始有序序列的全部元索。對(duì)于一個(gè)初始無(wú)序的序列,可以先將其等分為兩個(gè)無(wú)序的子序列,對(duì)這兩個(gè)子序列再次二分,重復(fù)該過(guò)程,直到分出的子序列中僅包含一個(gè)元素時(shí)(一個(gè)元素自然是有序的)為止,然后在反復(fù)進(jìn)行2一路歸并的過(guò)程,最后完成排序。
21.1371513715解析:本題中數(shù)組n有5個(gè)元素且初值為0,以下為for循環(huán)的執(zhí)行過(guò)程。
第1次循環(huán):循環(huán)前i=1,執(zhí)行循環(huán)語(yǔ)句n[1]=n[1-1)*2+1=n[0]*2+1=1,輸出1;
第2次循環(huán):循環(huán)前i=2,執(zhí)行循環(huán)語(yǔ)句n[2]=n[2-1)*2+1=n[1]*2+1=1*2+1=3,輸出3;
第3次循環(huán):循環(huán)前i=3,執(zhí)行循環(huán)語(yǔ)句n[3]=n[3-1]*2+1=n[2]*2+1=3*2+1=7,輸出7;
第4次循環(huán):循環(huán)前i=4,執(zhí)行循環(huán)語(yǔ)句n[4]=n[4-1)*2+1=n[3]*2+1=7*2+1=15,輸出15;
所以程序的運(yùn)行結(jié)果為:13715。
22.如果a能被i整除,則a是素?cái)?shù),返回值為0。如果a不能被i整除,則a不是素?cái)?shù),返回值為1。
23.6060解析:*(*(p+2)+1)相當(dāng)于訪問(wèn)的是a[2][1]的值。*(p[2]+1)、p[2][1]以及(*(p+2))[1]表達(dá)的含義都是a[2][1]的值。
24.讀棧頂元素讀棧頂元素解析:棧的基本運(yùn)算有3種:入棧、退棧和讀取棧頂元素。其中,入棧是指在棧頂插入一個(gè)新的元素;退棧是指取出棧頂元素并賦值給一個(gè)變量;讀棧頂元素是將棧頂元素賦值給一個(gè)指定的變量,不刪除棧頂元素。
25.邊界值分析法邊界值分析法解析:黑箱測(cè)試方法完全不考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征,而只是根據(jù)程序功能導(dǎo)出測(cè)試用例。常用的黑箱測(cè)試有等價(jià)類劃分、邊界值分析法和錯(cuò)誤推測(cè)法3種。
26.空間空間解析:算法的復(fù)雜度主要包括時(shí)間復(fù)雜度和空間復(fù)雜度。所謂算法的時(shí)間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算工作量。一個(gè)算法的空間復(fù)雜度,一般是指執(zhí)行這個(gè)算法所需要的內(nèi)存空間。
27.*ss!='\0'*ss!='\\0'解析:從字符串ss中找出某字符的方法是:從字符串ss的第一個(gè)字符開始,依次進(jìn)行比較,若ss串的當(dāng)前字符等于字符c,則i++;若ss串的當(dāng)前字符和字符c不同,則繼續(xù)對(duì)ss串的下一個(gè)字符進(jìn)行比較。本程序采用循環(huán)逐一比較的方式,找出某字符在字符串中出現(xiàn)的次數(shù)。汀語(yǔ)句的作用是判斷某字符與字符串中的當(dāng)前字符是否相同。
28.100100解析:本題考查帶參數(shù)的宏定義及相關(guān)運(yùn)算。運(yùn)算過(guò)程為:k=B*20=(A+3)*20=(2+3)*20=100。
29.f1+f2i%5==0f2=ff1+f2\r\ni%5==0\r\nf2=f解析:f用來(lái)保存前兩個(gè)數(shù)之和,并作為第三個(gè)數(shù),計(jì)算后把第二個(gè)數(shù)(f2)賦給f1,第三個(gè)數(shù)(f)賦給f2,再執(zhí)行for循環(huán)。
30.類類解析:在面向?qū)ο蟮姆椒ㄖ校丫哂邢嗤瑢傩院头椒ǖ膶?duì)象稱為類,類是對(duì)象的抽象,對(duì)象是類的實(shí)例。
31.fseek(文件指針位移量起始點(diǎn))fseek(文件指針,位移量,起始點(diǎn))解析:本題考查函數(shù)fseek的用法。fseek函數(shù)的調(diào)用形式為:
fseek(文件指針,位移量,起始點(diǎn))
“起始點(diǎn)”用0,1或2代替,其中,0代表“文件開始”;1為“當(dāng)前位置”;2為“文件末尾”?!拔灰屏俊敝敢浴捌鹗键c(diǎn)”為基點(diǎn),向前移動(dòng)的字節(jié)數(shù)。ANSIC和大多數(shù)C版本要求位移量是long型數(shù)據(jù),這樣當(dāng)文件的長(zhǎng)度大于64k時(shí)不致出現(xiàn)問(wèn)題。ANSIC標(biāo)準(zhǔn)規(guī)定在數(shù)字的末尾加一個(gè)字母L,就表示long型。
32.E-R圖E-R圖解析:數(shù)據(jù)庫(kù)邏輯設(shè)計(jì)的任務(wù)是將概念模型進(jìn)一步轉(zhuǎn)化成相應(yīng)的數(shù)據(jù)模型。而E-R圖是主要的概念模型,因此數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)的主要工作是將E-R圖轉(zhuǎn)換成關(guān)系模式。
33.關(guān)系或一個(gè)關(guān)系關(guān)系或一個(gè)關(guān)系解析:在關(guān)系數(shù)據(jù)庫(kù)中,把數(shù)據(jù)表示成二維表,而一個(gè)二維表就是一個(gè)關(guān)系。
34.3030解析:考查for循環(huán)的使用。題目中for(;;)表示:for循環(huán)的初始化表達(dá)式,條件表達(dá)式和修正表達(dá)式都省略了,表示進(jìn)行for循環(huán)和for循環(huán)的終止都沒(méi)有限制。
35.因?yàn)樵跅l件表達(dá)式(a<b)?a:b中,比較表達(dá)式a<b為真,所以x的值等于a的值等于1,后面兩個(gè)條件表達(dá)式中的比較表達(dá)式都為真,所以最終x的值等于1。\r\n\r\n
36.消息消息解析:在面向?qū)ο蠹夹g(shù)中,主要用到對(duì)象(object)、類(class)、方法(method)、消息(message)、繼承(inheritance)、封裝(encapsulation)等基本概念。其中消息是用來(lái)請(qǐng)求對(duì)象執(zhí)行某一處理或回答某些信息的要求。
37.44解析:在主函數(shù)中調(diào)用函數(shù)f,函數(shù)f有三個(gè)參數(shù),形參f1與f2分別是兩個(gè)指向函數(shù)的指針。在f中執(zhí)行f2(x)-f1(x),實(shí)際上是執(zhí)行了fb(2)-fa(2),故執(zhí)行i=(fa,fb,2)后i的值為23-22=4。
38.1212解析:本題考查逗號(hào)表達(dá)式的運(yùn)算規(guī)則。逗號(hào)表達(dá)式的基本格式為:“表達(dá)式1,表達(dá)式2,…”,其整個(gè)表達(dá)式的結(jié)果取最后一個(gè)子表達(dá)式的值。本題中首先計(jì)算逗號(hào)表達(dá)式中的第1個(gè)表達(dá)式a=2*3=6,然后計(jì)算第2個(gè)表達(dá)式a*2,這時(shí)整個(gè)表達(dá)式的值為12,但要注意,因?yàn)榈?個(gè)表達(dá)式并沒(méi)有給a賦值,因此a的值不變;接下來(lái)執(zhí)行最后一個(gè)表達(dá)式a+6=12,所以整個(gè)表達(dá)式最后的值為12。
39.數(shù)據(jù)庫(kù)系統(tǒng)或數(shù)據(jù)庫(kù)系統(tǒng)階段或數(shù)據(jù)庫(kù)或數(shù)據(jù)庫(kù)階段或數(shù)據(jù)庫(kù)管理技術(shù)階段數(shù)據(jù)庫(kù)系統(tǒng)或數(shù)據(jù)庫(kù)系統(tǒng)階段或數(shù)據(jù)庫(kù)或數(shù)據(jù)庫(kù)階段或數(shù)據(jù)庫(kù)管理技術(shù)階段解析:在數(shù)據(jù)庫(kù)系統(tǒng)管理階段,數(shù)據(jù)是結(jié)構(gòu)化的,是面向系統(tǒng)的,數(shù)據(jù)的冗余度小,從而節(jié)省了數(shù)據(jù)的存儲(chǔ)空間,也減少了對(duì)數(shù)據(jù)的存取時(shí)間,提高了訪問(wèn)效率,避免了數(shù)據(jù)的不一致性,同時(shí)提高了數(shù)據(jù)的可擴(kuò)充性和數(shù)據(jù)應(yīng)用的靈活性;數(shù)據(jù)具有獨(dú)立性,通過(guò)系統(tǒng)提供的映象功能,使數(shù)據(jù)具有兩方面的獨(dú)立性:一是物理獨(dú)立性,二是邏輯獨(dú)立性;保證了數(shù)據(jù)的完整性、安全性和并發(fā)性-綜上所述,數(shù)據(jù)獨(dú)立性最高的階段是數(shù)據(jù)庫(kù)系統(tǒng)管理階段。
40.5685,6,8解析:首先要清楚當(dāng)滿足第1個(gè)if的判斷條件時(shí)只執(zhí)行一條語(yǔ)句“s=a;”,當(dāng)滿足第2個(gè)if的判斷條件時(shí)執(zhí)行一條復(fù)合語(yǔ)句“{s=a;a=c;b=s};”,當(dāng)滿足第3個(gè)if的判斷條件時(shí)只執(zhí)行一條語(yǔ)句“s=b;”。執(zhí)行程序:判斷a>b,由于a=3,b=5則3>5為假,不執(zhí)行“s=a;”,執(zhí)行“a=b;”和“b=s;”,則a=5,b=8。判斷a>c,由于a=5,c=6則5>6為假,不執(zhí)行“{s=a;a=c;b=s};”。判斷b>c,由于b=5,c=6則5>6為假,不執(zhí)行“s=b;”,執(zhí)行“b=c;”和“c=s;”,則b=6,c=8。最后輸出5,6,8。
41.C解析:C語(yǔ)言規(guī)定如果全局變量與局部變量同名,則在局部變量的作用域內(nèi)全局變量不起作用。程序開頭定義的變量x為全局變量,函數(shù)incre中定義的變量x是局部靜態(tài)變量,存放在靜態(tài)存儲(chǔ)區(qū),incre調(diào)用結(jié)束后不釋放x占據(jù)的存儲(chǔ)單元。main函數(shù)中使用的x是全局變量x=3,所以main函數(shù)中調(diào)用函數(shù)incre兩次。調(diào)用過(guò)程如下。第1次調(diào)用:x=x*(x+1)=1×(1+1)=2,printf函數(shù)輸出2;第2次調(diào)用:x=x*(x+1)=2×(2+1)=6,printf函數(shù)輸出6。
42.A解析:反斜杠字符“\\”賦給字符,應(yīng)該寫成ch='\\\\',所以A是錯(cuò)誤的。
43.D解析:字符替換定義格式為:#define標(biāo)識(shí)符(形參表)形參表達(dá)式。題中F是代表形參表達(dá)式的標(biāo)識(shí)符(字符串)。
44.B水平制表符中,'\t'表示的是橫向跳若干格;選項(xiàng)B中,'\039'錯(cuò)誤,'\039'是八進(jìn)制形式表的字符,最大數(shù)為7,但其中出現(xiàn)'9',','是字符逗號(hào);選項(xiàng)D中,'\n'表示的是換行。
45.D解析:在結(jié)構(gòu)化程序設(shè)計(jì)中,應(yīng)嚴(yán)格控制使用GOTO語(yǔ)句,必要時(shí)才可以使用。
46.B
47.D解析:本題考查兩個(gè)知識(shí)點(diǎn):①C語(yǔ)言用'\\n'這個(gè)字符常量表示換行;②函數(shù)getchar()的作用是從終端輸入一個(gè)字符,當(dāng)遇到換行時(shí)結(jié)束輸入。
48.C解析:數(shù)據(jù)塊讀取函數(shù)調(diào)用形式:fread(buffer,size,count,fp)。fread函數(shù)參數(shù)說(shuō)明:“buffer”是一個(gè)指針,對(duì)fread來(lái)說(shuō),它是讀入數(shù)據(jù)的存放地址。對(duì)fwrite來(lái)說(shuō),是要輸出數(shù)據(jù)的地址。“size”是要讀寫的字節(jié)數(shù):“count”是要進(jìn)行讀寫多少個(gè)size字節(jié)的數(shù)據(jù)項(xiàng);“fp”是指文件型指針。
49.D
50.B
51.C解析:strcat(s1,s2)是把s2字符串連接到s1字符串末尾,strcpy(s1,s2)是把s2字符串復(fù)制給s1字符串,要保證s1能容納下連接或復(fù)制后的字符串。
52.C解析:FILE是由系統(tǒng)定義的一個(gè)結(jié)構(gòu)體類型,并用該類型來(lái)定義若干個(gè)FILE類型的變量。用FILE定義的變量必須是數(shù)組或指針,選項(xiàng)C)中的fP應(yīng)該改為*fP。
53.B解析:在C語(yǔ)言中,宏定義是直接替換的,所以在c+a>b?a:b這個(gè)條件表達(dá)式中,c+a>b為真,所以用a的值作為整個(gè)表達(dá)式的值,而a的值為5,所以整個(gè)表達(dá)式的值為5。
54.A解析:繼承是一個(gè)子類直接使用父類的所有屬性和方法。它可以減少相似的類的重復(fù)說(shuō)明,從而體現(xiàn)出一般性與特殊性的原則,這使得面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言有了良好的重用性,也是其不同于其他語(yǔ)言的主要特點(diǎn)。
55.C解析:選項(xiàng)A中定義兩個(gè)變量a和b,并賦初值,C語(yǔ)言中可以同時(shí)定義多個(gè)變量,但變量之間必須用“,”隔開,顯然,選項(xiàng)A中少了一個(gè)逗號(hào)“,”,故選項(xiàng)A不正確;選項(xiàng)B中定義變量時(shí)用了連續(xù)的賦值語(yǔ)句,這在定義變量是不正確的,故選項(xiàng)B不正確,選項(xiàng)D定義一個(gè)指針,然后定義了一個(gè)變量并讓這個(gè)變量的初值為該指針變量,顯然這這時(shí)的指針變量還沒(méi)初始化就被賦值給變量,是不對(duì)的,故選項(xiàng)D不正確,所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
56.C解析:選項(xiàng)A)中定義函數(shù)時(shí),形參的類型說(shuō)明應(yīng)該放在形參表列內(nèi)說(shuō)明。老版本C語(yǔ)言中,對(duì)形參類型的聲明是放在函數(shù)定義的第2行,也就是不在第1行的括號(hào)內(nèi)指定形參的類型,而在括號(hào)外單獨(dú)指定。選項(xiàng)B)中return后面的值可以是一個(gè)表達(dá)式。選項(xiàng)D)中實(shí)參與形參的類型應(yīng)相同或賦值兼容。如果實(shí)參為整型而形參為實(shí)型,或者相反,則按不同類型數(shù)值的賦值規(guī)則進(jìn)行轉(zhuǎn)換,以形參類型為準(zhǔn)。
57.C解析:本題考核的知識(shí)點(diǎn)是二維數(shù)組的初始化及庫(kù)函數(shù)strlen()的應(yīng)用。主函數(shù)中定義了一個(gè)二維字符數(shù)組并初始化,初始化后的結(jié)果為str[0]='Hello',str[1]='Beijing',然后定義一個(gè)字符指針變量p并讓它指向數(shù)組的首地址,即指向str[0],而在C語(yǔ)言中無(wú)論是一維還是多維數(shù)組,其元素在內(nèi)存中都是順序存放的,故p+20后指針指向str[1],所以strlen(P+20);返回的是str[1]中的字符串的長(zhǎng)度,即Beijing的長(zhǎng)度為7,所以最后輸出的值為7,所以,4個(gè)選項(xiàng)中選項(xiàng)C符合題意。
58.B解析:編譯時(shí),編譯系統(tǒng)不為局部變量分配內(nèi)存單元,而是在程序運(yùn)行中,當(dāng)局部變量所在的函數(shù)被調(diào)用時(shí),編譯系統(tǒng)根據(jù)需要要臨時(shí)分配內(nèi)存,調(diào)用結(jié)束空間釋放;全局變量一經(jīng)定義,編譯系統(tǒng)為其分配固定的內(nèi)存單元,在程序運(yùn)行的自始至終都占用固定的單元。在考慮內(nèi)存不定的情況下,最好使用全局變量。
59.DD.【解析】在線性鏈表中,各元素在存儲(chǔ)空間中的位置是任意的,各元素的順序也是任意的,依靠指針來(lái)實(shí)現(xiàn)數(shù)據(jù)元素的前后件關(guān)系。
60.C
61.C本題考查衡量模塊獨(dú)立性的標(biāo)準(zhǔn)。
模塊獨(dú)立性的概念是模塊化、抽象和信息隱蔽的直接結(jié)果。
模塊獨(dú)立性是軟件質(zhì)量的關(guān)鍵,它指軟件系統(tǒng)中的每個(gè)模塊只涉及軟件要求的具體子功能,并且與其他模塊的聯(lián)系最少且接口簡(jiǎn)單。這樣做不僅便于軟件測(cè)試和維護(hù),還使模塊化程度較高的軟件易于開發(fā),尤其當(dāng)一組開發(fā)人員共同開發(fā)一個(gè)軟件時(shí),模塊化能夠分割功能,而且接口可以簡(jiǎn)化。
模塊的獨(dú)立性可以用兩個(gè)定性標(biāo)準(zhǔn)度量:耦合和內(nèi)聚。
耦合是模塊之間相互連接的緊密程度的度量。模塊之間的連接越緊密,聯(lián)系越多,耦合性就越高,而其模塊獨(dú)立性就越弱。內(nèi)聚是一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度的度量。一個(gè)模塊內(nèi)部各個(gè)元素之間的聯(lián)系越緊密,內(nèi)聚性就越高,相對(duì)于其他模塊之間的耦合性就會(huì)降低,而模塊獨(dú)立性就越強(qiáng)。因此,模塊獨(dú)立性較強(qiáng)的模塊應(yīng)該是高內(nèi)聚低耦合的模塊。
62.Cif…else語(yǔ)句的執(zhí)行過(guò)程如下,首先計(jì)算if后面一對(duì)圓括號(hào)內(nèi)表達(dá)式的值,若表達(dá)式的值為非0,執(zhí)行if子句,然后跳過(guò)else子句,去執(zhí)行if語(yǔ)句后的下一條語(yǔ)句;若表達(dá)式的值為0,跳過(guò)if子句,去執(zhí)行else子句,接著去執(zhí)行if語(yǔ)句后的下一條語(yǔ)句。C語(yǔ)言的語(yǔ)法規(guī)定,else子句總是與前面最近的不帶else的if匹配,與書寫格式無(wú)關(guān),本題目的后一個(gè)if-else相當(dāng)于嵌套在第一個(gè)if子句里,相當(dāng)于X<y&&y<0時(shí),z=0;當(dāng)X<y&&y>=0時(shí),z=z+1。
63.D
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 事業(yè)單位人員勞務(wù)合同
- 教室租借合同
- 互聯(lián)網(wǎng)市場(chǎng)推廣服務(wù)合同細(xì)節(jié)
- 單位保潔承包合同
- 代加工合同代加工合同
- 商品房屋購(gòu)銷合同新
- 上海手房過(guò)戶買賣合同書
- 房屋居間買賣合同
- 印刷廠協(xié)議合同書怎么寫
- 個(gè)人復(fù)印機(jī)租賃合同協(xié)議
- 《道德與法治》三年級(jí)學(xué)情分析
- 解讀《保守國(guó)家秘密法》2024年修訂專題課件
- 中英對(duì)照版-中文版-The-Dead-By-James-Joyces死者-詹姆斯-喬伊斯
- SL721-2015水利水電工程施工安全管理導(dǎo)則
- 2024年廣東省萬(wàn)閱大灣區(qū)百校聯(lián)盟中考一模數(shù)學(xué)試題
- 《短視頻拍攝與制作》課件-3短視頻中期拍攝
- (正式版)QBT 5935-2024 白酒工業(yè)綠色工廠評(píng)價(jià)要求
- 數(shù)字貿(mào)易學(xué) 課件 馬述忠 第13-22章 數(shù)字貿(mào)易綜合服務(wù)概述- 數(shù)字貿(mào)易規(guī)則構(gòu)建與WTO新一輪電子商務(wù)談判
- 2024年廣東省深圳市七年級(jí)下學(xué)期數(shù)學(xué)期中試題附參考答案
- 2024年電路保護(hù)元器件行業(yè)營(yíng)銷策略方案
- 污泥技術(shù)污泥運(yùn)輸方案
評(píng)論
0/150
提交評(píng)論