版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2022年浙江省寧波市全國計(jì)算機(jī)等級考試C語言程序設(shè)計(jì)測試卷一(含答案)學(xué)校:________班級:________姓名:________考號:________
一、單選題(20題)1.以下關(guān)于算法的敘述中錯誤的是()。
A.算法可以用偽代碼、流程圖等多種形式來描述
B.一個正確的算法必須有輸入
C.一個正確的算法必須有輸出
D.用流程圖描述的算法可以用任何一種計(jì)算機(jī)高級語言編寫成程序代碼
2.若串S=,software,其子串的數(shù)目是()。
A.8B.37C.36D.9
3.有以下程序:
程序執(zhí)行后的輸出結(jié)果是()。
A.1B.2C.3D.4
4.
5.定義如下變量和數(shù)組:inti;intx[4][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};則下面語句的輸出結(jié)果是()。A.15913B.161116C.471013D.481216
6.下列程序的運(yùn)行結(jié)果為()。
#deflneMAX(x,y)(x)>(y)(x):(y)
main()
{inta=2,b=3,c=1,d=3,t;
printf("%d\n",(MAX(a+b,c+D))*100);
}A.A.500B.5C.4D.400
7.下列敘述中正確的是()。
A.數(shù)據(jù)庫系統(tǒng)是一個獨(dú)立的系統(tǒng),不需要操作系統(tǒng)的支持
B.數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)的共享問題
C.數(shù)據(jù)庫管理系統(tǒng)就是數(shù)據(jù)庫系統(tǒng)
D.以上3種說法都不對
8.以下程序的輸出結(jié)果是()main(){union{chari[2];intk;}r;r.i[0]=2,r.i[1]=0;printf("%d\n",r,k);}
A.2B.1C.0D.不確定
9.下面哪個不是用來解決哈希表沖突的開放地址法()
A.線性探測法B.線性補(bǔ)償探測法C.拉鏈探測法D.隨機(jī)探測法
10.讀取二進(jìn)制文件的函數(shù)調(diào)用形式為:fread(buffersize,count,fp);,其中buffer代表的是()。
A.一個文件指針,指向待讀取的文件
B.一個整型變量,代表待讀取的數(shù)據(jù)的字節(jié)數(shù)
C.一個內(nèi)存塊的首地址,代表讀人數(shù)據(jù)存放的地址
D.一個內(nèi)存塊的字節(jié)數(shù)
11.一個算法的語句執(zhí)行次數(shù)為(2n2+2nlog2n+4n-7),則其時(shí)間復(fù)雜度為()。
A.O(n2)B.O(nlog2n)C.O(n)D.O(2n2)
12.字符串"\\"ABCDEF\"\\”的長度是()。
A.11B.10C.5D.3
13.對于n個結(jié)點(diǎn)的單向鏈表(無表頭結(jié)點(diǎn)),需要指針單元的個數(shù)至少為______。
A.n-1B.nC.n+1D.2n
14.以下選項(xiàng)中,算術(shù)表達(dá)式的值與其他3個不同的是()。
A.3/5.B.3./5C.3/5D.3.0/5.0
15.下列能正確進(jìn)行字符串賦值的是()。
A.chars[5]={"ABCDE"};
B.chars[5]={A,B,C,D,E};
C.char*S;S="ABCDE";
D.char*s;printf("%《",s);
16.有以下程序floatfun(intx,inty){return(x+y);}main(){inta=2,b=5,c=8;printf(“%3.Of\n”,fun((int)fun(a+c,b),a-c));}程序運(yùn)行后的輸出結(jié)果是
A.編譯出錯B.9C.21D.9
17.若執(zhí)行以下程序時(shí)從鍵盤上輸入9,則輸出結(jié)果是()。main(){intn;scanf(”%d”,&n);if(n++<10)printf(”/%d\n”,n);elseprintf(”%d\n”,n--);}A.11B.10C.9D.8
18.
19.有下列程序段:intn,t=1,S=0;scanf("%d",&n);do{s=s+t;t=t-2;while(t!=n);為使此程序段不陷入循環(huán),從鍵盤輸入的數(shù)據(jù)應(yīng)該是()。A.任意正奇數(shù)B.任意負(fù)偶數(shù)C.任意正偶數(shù)D.任意負(fù)奇數(shù)
20.檢查軟件產(chǎn)品是否符合需求定義的過程稱為()。
A.確認(rèn)測試B.集成測試C.驗(yàn)證測試D.驗(yàn)收測試
二、2.填空題(20題)21.下列語句能循環(huán)______次。
ints=12;
while(s);
--s;
22.對于長度為n的順序存儲的線性表,當(dāng)隨機(jī)插入和刪除—個元素時(shí),需平均移動元素的個數(shù)為【】。
23.表達(dá)式pow(2.8,sqrt(float(x)))值的數(shù)據(jù)類型為______型。
24.在關(guān)系模型中,二維表的行稱為______。
25.若有以下程序:
intf(intx,inty)
{return(y-x)*x;}
main()
{inta=3,b=4,c=5,d;
d=f(3,4),f(3,5));
printf("%d\n",d);
}
執(zhí)行后輸出結(jié)果是【】。
26.以下程序的運(yùn)行結(jié)果是【】。
#include<stdio.h>
main()
{intx=1,y=0,a=0,b=0;
switch(x)
{case1:
switch(y)
{case0:a++;break;
case1:b++;break;
}
case2:a++;b++;break;
case3:a++;b++;
}
printf("a=%d,b=%d\n",a,b);
}
27.設(shè)有以下定義
struetss
{intinfo;struetss*link;}x,y,z;
且已建立如下圖所示鏈表結(jié)構(gòu):
請寫出刪除結(jié)點(diǎn)y的賦值語句【】。
28.下列語句的輸出結(jié)果是______。
chars[20]="aaaa",*sp=s;
puts(strcat(sp,"AAAAA"));
29.若a是int型變量,則表達(dá)式(a=2*3,a*2),a+6的值為______。
30.以下程序的輸出結(jié)果是【】。
main()
{unsignedshorta=65536;intb;
printf("%d\n",b=A);
}
31.數(shù)據(jù)庫的邏輯模型設(shè)計(jì)階段的任務(wù)是將______轉(zhuǎn)換成關(guān)系模式。
32.以下程序運(yùn)行后的輸出結(jié)果是______。
#include<string.h>
main()
{charch[]="abc",x[3][4];inti;
for(i=0;i<3;i++)strcpy(x[i],ch);
for(i=0;i<3;i++)printf("%s",&x[i][i]);
printf("\n");
}
33.結(jié)構(gòu)化程序設(shè)計(jì)的三種基本邏輯結(jié)構(gòu)為順序、選擇和【】。
34.下面的程序用來統(tǒng)計(jì)文件中字符的個數(shù)。請?zhí)羁铡?/p>
#include<stdio.h>
main()
{FILE*fP;
longnum=0;
if((fp=fopen("fname.dat","r"))==NULL)
{printf("Can'topenfile!\n");sxit(0);}
while【】
{fgetc(fp);num++;}
printr("num=%d\n",num);
fclose(fp);
}
35.關(guān)系模型的完整性規(guī)則是對關(guān)系的某種約束條件,包括實(shí)體完整性、______和自定義完整性。
36.以下程序的輸出結(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))
}
37.以下程序的輸出結(jié)果是()。#include<stdio.h>main(){inti=10,j=0;do{j=j+i;i--;}while(i>5);printf("%d\n",j);}
38.為了建立如圖所示的存儲結(jié)構(gòu)(即每個結(jié)點(diǎn)含兩個域,data是數(shù)據(jù)域,next是指向結(jié)點(diǎn)的指針域)。請?zhí)羁铡?/p>
structlink{chardata;【】;}node;
39.面向?qū)ο蟮哪P椭校罨镜母拍钍菍ο蠛蚠_____。
40.數(shù)據(jù)庫系統(tǒng)的三級模式分別為______模式、內(nèi)部級模式與外部級模式。
三、1.選擇題(20題)41.以下程序段的輸出結(jié)果為()。staticchara[]="programme";char*p;p=a;for(p=a;p<a+8;p+=2)putchar(*p);
A.programmeB.pormC.有語法錯誤D.prog
42.有以下程序:main(){chars[]="ABCD",*p;for(p=s+1;p<s+4;p++)printf("%s\n",p);}程序運(yùn)行后的輸出結(jié)果是()。
A.ABCDBCDCDDB.ABCDC.BCDD.BCDCDD
43.下列寫法正確的是()。
A.main(){inti=3,j;j=5}
B.main(){inti=3;
C.main()
D.main(){;}
44.下面程序的輸出結(jié)果是()。main(){inti=1,p;p=f(i,++i);printf("%d",p);}intf(inta,intb){intC;if(a>b)C=1;elseif(a==b)C=0;elseC==-1;return(C);}
A.-1B.0C.1D.2
45.以下程序的輸出結(jié)果是()main(){charss[16]="test\0\n\"";printf("%d,%d\n",strlen(ss),sizeof(ss)):}
A.4,16B.7,7C.16,16D.4,7
46.有以下程序
#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)行后,若從鍵盤輸入(從第1列開始)
123<回車>
45678<回車>
則輸出結(jié)果是
A.1267B.1256C.1278D.1245
47.以下關(guān)于long、int和short類型數(shù)據(jù)占用內(nèi)存大小的敘述中正確的是(),
A.均占4個字節(jié)B.根據(jù)數(shù)據(jù)的大小來決定所占內(nèi)存的字節(jié)數(shù)C.由用戶自己定義D.由C語言編譯系統(tǒng)決定
48.在數(shù)據(jù)結(jié)構(gòu)中,從邏輯上可以把數(shù)據(jù)結(jié)構(gòu)分為()。A.動態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)B.緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)C.線性結(jié)構(gòu)和非線性結(jié)構(gòu)D.內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)
49.下列描述中,不是線性表順序存儲結(jié)構(gòu)特征的是
A.不便于插入和刪除B.需要連續(xù)的存儲空間C.可隨機(jī)訪問D.需另外開辟空間來保存元素之間的關(guān)系
50.以下敘述中不正確的是
A.預(yù)處理命令行都必須以#號開始
B.在程序中凡是以#號開始的語句行都是預(yù)處理命令行
C.宏替換不占用運(yùn)行時(shí)間,只占編譯時(shí)間
D.在以下定義是正確的:#definePI3.1415926;
51.設(shè)已執(zhí)行預(yù)編譯命令#include<string.h>,以下程序段的輸出結(jié)果是
chars[]="anapple";
printf("%d\n",strlen(s));
A.7B.8C.9D.10
52.若有以下定義的語句structstudent{intage;intnum;};structstudentstu[3]={{1001,20},{1002,19},{1003,21}};main(){stmctstudent*p;p=stu;…}則以下不正確的引用是
A.(p++)->numB.p++C.(*p).numD.P=&stu.age.
53.有以下程序floatfun(intx,inty){return{x+y);}main(){inta=2,b=5,c=8;printf("%3.of\n",fun((int)fun(a+c,B),a-C));}程序運(yùn)行后的輸出結(jié)果是
A.編譯出錯B.9C.21D.9
54.若有說明:int*p1,*p2,n=8,m;下列均是正確賦值語句的選項(xiàng)是()。
A.p1=&n;p2=&p1;
B.p1=n;
C.p1=&n;*p2=p1;
D.p1=&n;p2=p1;
55.設(shè)有如下說明typedefstructST{longa;intb;charc[2];}NEW;則下面敘述中正確的是______。A.以上的說明形式非法B.ST是一個結(jié)構(gòu)體類型C.NEW是一個結(jié)構(gòu)體類型D.NEW是一個結(jié)構(gòu)體變量
56.下列敘述中,不屬于測試的特征的是
A.測試的挑剔性B.完全測試的不可能性C.測試的可靠性D.測試的經(jīng)濟(jì)性
57.有下列二叉樹,對此二叉樹前序遍歷的結(jié)果為()。
A.ACBEDGFHB.ABDGCEHFC.HGFEDCBAD.ABCDEFGH
58.以下正確的程序段是
A.charstr1[]="12345",str2[]="abcdef";
B.charstr[10],*st="abcde";strcat(str,st);
C.charstr[10]=""。*st="abcde";strcat(str,st);
D.char*st1="12345",*st2="abcde";strcat(st1,st2);
59.以下能正確定義字符串的語句是()。
A.charstr[]={'\064'};
B.charstr="\x43";
C.charstr=";
D.charstr[]="\0";
60.若a是noat型變量,b是unsigned型變量,以下輸入語句中,合法的是______。
A.scanf("%6.2f%d",&a,&b);
B.scanf("%f%n",&a,&b);
C.scaaf("%f%3o",&a,&b);
D.scanf("%f%f",&a,&b);
四、選擇題(20題)61.定義無符號整數(shù)類為UInt,下面可以作為類UInt實(shí)例化值的是()。
A.-369B.369C.0.369D.整數(shù)集合11,2,3,4,51
62.有以下結(jié)構(gòu)體說明和變量定義,如圖所示,指針p、q、r分別指向此鏈表中的三個連續(xù)節(jié)點(diǎn)。structnode{intdata;structnode*next;}*P,*q,*r;現(xiàn)要將q所指節(jié)點(diǎn)從鏈表中刪除,同時(shí)要保持鏈表的連續(xù),
以下不能完成指定操作的語句是()。
A.p->next=q->next;
B.p->next=P->next->next;
C.p->next=r;
D.p=q->next;
63.(6)在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開發(fā)階段是()
A.可行性分析
B.需求分析
C.詳細(xì)設(shè)計(jì)
D.程序編碼
64.
65.
66.軟件按功能可以分為應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(工具軟件)。下面屬于應(yīng)用軟件的是().
A.學(xué)生成績管理系統(tǒng)B.C語言編譯程序C.UNIX操作系統(tǒng)D.數(shù)據(jù)庫管理系統(tǒng)
67.若有以下函數(shù)首部:
intfun(doublex[10],int*n)
則下面針對此函數(shù)的函數(shù)聲明語句中正確的是()。
A.intfun(double,int);
B.intfun(double木,int*);
C.intmn(double*x,intn);
D.intfun(doublex,intint*n)
68.
69.假設(shè)a和b為int型變量,則執(zhí)行以下語句后b的值為()。a=1;b=10;do{b-=a;a++;}while(b--<0);A.9B.-2C.-lD.8
70.
71.在c語言中,只有在使用時(shí)才占用內(nèi)存單元的變量,其存儲類型是()。
A.auto和static
B.extern和register
C.auto和register
D.static和register
72.
73.
A.*P=*q;B.P=q;C.*P=&nl;D.P=*q;
74.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.9.One*World
B.9.One*Dream!
C.10.One*Dream!
D.10.One*World
75.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.61B.70C.63D.71
76.有以下程序:
程序運(yùn)行后的輸出結(jié)果是()。
A.9B.6C.11D.7
77.由兩個棧共享一個存儲空間的好處是______。A.A.減少存取時(shí)間,降低下溢發(fā)生的概率
B.節(jié)省存儲空間,降低上溢發(fā)生的概率
C.減少存取時(shí)間,降低上溢發(fā)生的概率
D.節(jié)省存儲空間,降低下溢發(fā)生的概率
78.下列敘述中正確的是()。A.順序存儲結(jié)構(gòu)的存儲空間一定是連續(xù)的,鏈?zhǔn)酱鎯Y(jié)構(gòu)的存儲空間不一定是連續(xù)的
B.順序存儲結(jié)構(gòu)只針對線性結(jié)構(gòu),鏈?zhǔn)酱鎯Y(jié)構(gòu)只針對非線性結(jié)構(gòu)
C.順序存儲結(jié)構(gòu)能存儲有序表,鏈?zhǔn)酱鎯Y(jié)構(gòu)不能存儲有序表
D.鏈?zhǔn)酱鎯Y(jié)構(gòu)比順序存儲結(jié)構(gòu)節(jié)省存儲空間
79.若有定義語句:intx=10;,則表沃式㈣的值為()。A.一10B.-20C.0D.10
80.下列關(guān)于C語言數(shù)據(jù)文件的敘述中正確的是______。
A.文件由ASCII碼字符序列組成,C語言只能讀寫文本文件
B.文件由二進(jìn)制數(shù)據(jù)序列組成,C語言只能讀寫二進(jìn)制文件
C.文件由數(shù)據(jù)流形式組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件
D.文件由記錄序列組成,可按數(shù)據(jù)的存放形式分為二進(jìn)制文件和文本文件
五、程序改錯題(1題)81.下列給定程序中,函數(shù)proc()的功能是:對M名學(xué)生的學(xué)習(xí)成績,按從低到高的順序找出m(m≤10)名學(xué)生來,并將這些學(xué)生數(shù)據(jù)存放在一個動態(tài)分配的連續(xù)存儲區(qū)中,此存儲區(qū)的首地址作為函數(shù)值返回。
請改正程序中的錯誤,使它能得出正確的結(jié)果。
注意:不要改動main函數(shù).不得增行或刪行,也不得更改程序的結(jié)構(gòu)。
試題程序:
六、程序設(shè)計(jì)題(1題)82.輸出1—100之間不能被12整除的數(shù)。
參考答案
1.B【答案】B
【知識點(diǎn)】算法描述
【解析】一個算法應(yīng)該有0個或多個輸入,但是必須有一個或多個輸出。
2.B
3.C該程序中int8pl=&a,+p2=&b,4P=&c;指定義三個指針變量,并賦值,即使pl指向a;p2指向b;p指向c。+P=。pl$(+p2)。;該條語句是給P所指的存儲單元c賦值,就是pl所指的存儲單元的值,即a的值,與p2所指的存儲單元b的值相乘,也就是c=a+b,等價(jià)于c=1·3=3;因此C選項(xiàng)正確。‘
4.B
5.C
6.A解析:本題考查帶參數(shù)的宏的定義及相關(guān)運(yùn)算:(x)>(y)(x):(y)是x>y時(shí)輸出x,否則輸出y,調(diào)用(MAX(a+b,c+d))*100時(shí),(a+b=5)>(c+d=4),所以輸出a+b=5,所以x=5*100。
7.B解析:數(shù)據(jù)庫系統(tǒng)除了數(shù)據(jù)庫管理軟件之外,還必須有其他相關(guān)軟件的支持。這些軟件包括操作系統(tǒng)、編譯系統(tǒng)、應(yīng)用軟件開發(fā)工具等,選項(xiàng)A的說法是錯誤的。數(shù)據(jù)庫具有為各種用戶所共享的特點(diǎn),選項(xiàng)B的說法是正確的。通常將引入數(shù)據(jù)庫技術(shù)的計(jì)算機(jī)系統(tǒng)稱為數(shù)據(jù)庫系統(tǒng)。一個數(shù)據(jù)庫系統(tǒng)通常由5個部分組成,包括相關(guān)計(jì)算機(jī)的硬件、數(shù)據(jù)庫集合、數(shù)據(jù)庫管理系統(tǒng)、相關(guān)軟件和人員。因此,選項(xiàng)C的說法是錯誤的。
8.A解析:根據(jù)共用體的定義可知:共用體r的成員k和成員i[2]是共用同—段內(nèi)存空間,所以,當(dāng)程序給r.i[0]賦值后,實(shí)際上,共用體成員k的值也確定了,為2。所以打印輸出的結(jié)果應(yīng)當(dāng)為2。
9.C
10.Cfread函數(shù)中的參數(shù)buffer是內(nèi)存塊的首地址,輸入的數(shù)據(jù)存入此內(nèi)存塊中。
11.A
12.B解析:本題涉及字符串的兩個最基本的概念。①字符串的長度是指字符串中字符的個數(shù),但不包含字符串結(jié)束符;②以反斜線“\\”開頭的特殊字符序列,意思是把反斜線后面的字符序列轉(zhuǎn)換成特定的含義,而不是原來的含義,不包含在字符串長度之內(nèi),“\\”連同后面的字符為一個長度。
13.C解析:在n個結(jié)點(diǎn)的單向鏈表(無表頭結(jié)點(diǎn))中,每個結(jié)點(diǎn)都有一個指針單元(即指針域),加上頭指針,至少需要n+1個指針單元。
14.CC語言中除法運(yùn)算有兩個運(yùn)算數(shù),兩個整數(shù)的除法運(yùn)算會舍去小數(shù)部分,結(jié)果為整數(shù);由于C語言中浮點(diǎn)數(shù)的小數(shù)形式必須要有小數(shù)點(diǎn),所以選項(xiàng)A(5.)、B(3.)、D(3.0和5.0)都是浮點(diǎn)數(shù)。選項(xiàng)A、B運(yùn)算時(shí)自動將另一個整數(shù)轉(zhuǎn)換成浮點(diǎn)數(shù),然后再運(yùn)算,選項(xiàng)D中兩個都是浮點(diǎn)數(shù),浮點(diǎn)數(shù)的除法運(yùn)算結(jié)果還是浮點(diǎn)數(shù)。所以本題中選項(xiàng)A、B、D運(yùn)算結(jié)果是浮點(diǎn)數(shù),選項(xiàng)C運(yùn)算結(jié)果是整數(shù)。故本題答案為C選項(xiàng)。
15.C選項(xiàng)A、B的空間不夠;字符串存儲要有結(jié)束符\0,且要占用一個空間,printf用來輸出字符,不能輸入字符串。
16.B解析:fun()函數(shù)是將傳進(jìn)來的兩個整型參數(shù)相加,把和作為函數(shù)值返回,注意返回值為float型。在主函數(shù)調(diào)用了兩次fun()函數(shù),第一次調(diào)用時(shí)把表達(dá)式“a+c”和變量“b”的值求和,得到15轉(zhuǎn)換為15.0作為函數(shù)的返回值。第二次調(diào)用把第一次調(diào)用的返回值通過強(qiáng)制類型轉(zhuǎn)換成int型15,再和表達(dá)式“a-c”相加,得到結(jié)果9,轉(zhuǎn)換成float型作為函數(shù)值返回。由于輸出格式符為“%3.of輸出時(shí)沒有小數(shù)位,故輸出為9。
17.B當(dāng)n為9時(shí),此時(shí)if語句成立,執(zhí)行n++后,n為10,因此輸出n的值為10,故選擇B選項(xiàng)。
18.A
19.D本題主要考查do—while循環(huán),因?yàn)樽兞縯的初始值等于1,經(jīng)過第一次do-while循環(huán)后,執(zhí)行t=t-1這條語句一次,所以變量t的值為-1,判斷關(guān)系表達(dá)式t!=n是否成立,如果關(guān)系表達(dá)式成立,則執(zhí)行第二次循環(huán),如果關(guān)系表達(dá)式不成立,退出循環(huán)。由此可見,只要輸入變量n的值為負(fù)奇數(shù),則一定會使t==n成立,故退出do-while循環(huán)。
20.A本題主要考查軟件測試的基本知識。軟件測試的步驟可分為單元測試(模塊測試)、集成測試、確認(rèn)測試和系統(tǒng)測試。
(1)單元測試是針對每個模塊進(jìn)行的測試,它可從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計(jì)測試用例,多個模塊可以平行、對立地測試。單元測試主要用于發(fā)現(xiàn)詳細(xì)設(shè)計(jì)和編程時(shí)犯下的錯誤。單元測試多采用白盒測試,輔之以黑盒測試。
(2)集成測試是在單元測試的基礎(chǔ)上,根據(jù)模塊結(jié)構(gòu)圖將各個模塊連接起來,必須精心計(jì)劃,應(yīng)提交集成測試計(jì)劃、集成測試規(guī)格說明和集成測試分析報(bào)告。主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。集成測試可以發(fā)現(xiàn)概要設(shè)計(jì)時(shí)犯的錯誤。
(3)確認(rèn)測試用于驗(yàn)證軟件的功能和性能及其他特性是否與用戶的要求一致。確認(rèn)測試主要用于發(fā)現(xiàn)需求分析時(shí)犯下的錯誤,一般使用黑盒法測試,以表明軟件符合需求說明書的要求,應(yīng)該仔細(xì)設(shè)計(jì)測試用例和測試過程。確認(rèn)測試必須有用戶參加,或以用戶為主,用戶應(yīng)參與設(shè)計(jì)測試用例,通常情況下,主要使用生產(chǎn)中的實(shí)際數(shù)據(jù)進(jìn)行測試,測試數(shù)據(jù)通過用戶接口輸入。
(4)系統(tǒng)測試是將已經(jīng)通過確認(rèn)測試的軟件,作為整個計(jì)算機(jī)系統(tǒng)的元素與計(jì)算機(jī)硬件、外設(shè)和網(wǎng)絡(luò)等其他因素結(jié)合在一起,進(jìn)行一系列的組裝測試和確認(rèn)測試。系統(tǒng)測試的目的是通過與系統(tǒng)的需求定義做比較,發(fā)現(xiàn)軟件與系統(tǒng)的定義不符合的地方。系統(tǒng)測試可以發(fā)現(xiàn)問題定義時(shí)犯下的錯誤。
21.無限無限解析:分析程序“while(s)”語句后面有一個“;”不能執(zhí)行后面的語句,只是執(zhí)行空語句,所以s=12保持不變,因此,沒有條件限制的能循環(huán)無限次(即死循環(huán))。
22.n/2n/2解析:刪除—個元素,平均移動的元素個數(shù)為(n-1+n-2+…+0)/n=(n-1)/2;插入一個元素,平均移動元素個數(shù)為(n+n-1+n-2+…+1)/n=(n+1)/2:所以總體平均移動元素個數(shù)為n/2。
23.floatfloat解析:在此表達(dá)式中x是float類型的變量,經(jīng)過開方所得到的結(jié)果仍是float類型,再和2.8進(jìn)行運(yùn)算時(shí),應(yīng)該先將2.8轉(zhuǎn)換成float類型再運(yùn)算,最后結(jié)果仍是float型。
24.元組元組解析:在關(guān)系型數(shù)據(jù)庫中,用二維表來表示關(guān)系,二維表的表名即關(guān)系名,二維表的行稱為關(guān)系的元組,二維表的列,稱為關(guān)系的屬性。
25.99解析:在主函數(shù)中函數(shù)f(f(3,4),f(3,5))的返回值賦給d。函數(shù)的第一個參數(shù)為f(3,4)的返回值,函數(shù)f(3,4)返回值為(4-3)×3=3,f(3,5)返回值為(5-3)×3=6,那么函數(shù)f(f(3,4),f(3,5))等價(jià)于函數(shù)f(3,6)其返回值為(6-3)×3=9。因此d被賦值為9;所以輸出9。
26.a=2b=1a=2,b=1解析:本題考查了switch結(jié)構(gòu)的內(nèi)容。C語言中,程序執(zhí)行完一個case標(biāo)號的內(nèi)容后,如果沒有break語句,控制結(jié)構(gòu)會轉(zhuǎn)移到下一個case繼續(xù)執(zhí)行,因?yàn)閏ase常量表達(dá)式只是起語句標(biāo)號作用,并不是在該處進(jìn)行條件判斷。本題程序在執(zhí)行完內(nèi)部switch結(jié)構(gòu)后,繼續(xù)執(zhí)行了外部switch結(jié)構(gòu)的case2分支,最后a和b的值分別為2和1。
27.x.link=&z;或x.link=y.link;或x.link=x.link->link;或x.link=*(x.link).link;x.link=&z;或x.link=y.link;或x.link=x.link->link;或x.link=*(x.link).link;解析:鏈表中結(jié)點(diǎn)的刪除,要刪除結(jié)點(diǎn)y,只需要讓結(jié)點(diǎn)x的指針域指向y結(jié)點(diǎn)的指針域所指向的后續(xù)結(jié)點(diǎn)就可,因此只需把結(jié)點(diǎn)z的地址賦給x的指針域就可以了,即讓結(jié)點(diǎn)x的指針域指向結(jié)點(diǎn)z。而結(jié)點(diǎn)z的地址保存在結(jié)點(diǎn)y的指針域中,因此只需把結(jié)點(diǎn)y的指針域賦值給結(jié)點(diǎn)x的指針域即可。
28.aaaaAAAAAaaaaAAAAA解析:函數(shù)strcat(sp,'AAAAA')的作用是將字符中“AAAAA”連接到字符串sp的末尾,并自動覆蓋字符數(shù)組sp末尾的\'\\0\'。
29.1212解析:本題考查逗號表達(dá)式的運(yùn)算規(guī)則。逗號表達(dá)式的基本格式為:“表達(dá)式1,表達(dá)式2,…”,其整個表達(dá)式的結(jié)果取最后一個子表達(dá)式的值。本題中首先計(jì)算逗號表達(dá)式中的第1個表達(dá)式a=2*3=6,然后計(jì)算第2個表達(dá)式a*2,這時(shí)整個表達(dá)式的值為12,但要注意,因?yàn)榈?個表達(dá)式并沒有給a賦值,因此a的值不變;接下來執(zhí)行最后一個表達(dá)式a+6=12,所以整個表達(dá)式最后的值為12。
30.00解析:對于一個unsignedshort來說,它能取的最大值是65535。這里給a賦值65536,已經(jīng)超出了它的取值范圍,這樣它的高位將被截掉,只把低位賦給它(全零)。所以a的值實(shí)際為0。
31.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)系模式。
32.abcbcc
33.重復(fù)(或循環(huán))重復(fù)(或循環(huán))
34.(!feof(fp))或feof(fp):=0(!feof(fp))或feof(fp):=0
35.參照完整性參照完整性
36.3535解析:函數(shù)swap(int*a,int*b)的功能是實(shí)現(xiàn)*a和*b中兩個數(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。
37.4040解析:分析程序,初始時(shí)i=10,j=0,這時(shí)do循環(huán)中的“i=j+i”
38.structlink*next
39.類類
40.概念(或概念級)概念(或概念級)
41.B解析:本程序首先定義了靜態(tài)字符數(shù)組a,然后將指針p指向數(shù)組a的首地址,第一次for循環(huán),p=a,p指向數(shù)組的第一個元素,*p是取指針p所指地址的內(nèi)容,輸出p;第二次for循環(huán),p=p+2,則p指向數(shù)組的第三個元素,*p是取指針p所指地址的內(nèi)容,輸出o;第三次for循環(huán),p=p+2,則p指向數(shù)組的第5個元素,*p是取指針p所指地址的內(nèi)容,輸出r;第四次for循環(huán),p=p+2,則p指向數(shù)組的第7個元素,*p是取指針p所指地址的內(nèi)容,輸出m;結(jié)束循環(huán)。
42.D解析:本題中首先定義一個字符數(shù)組s,并將字符串'ABCD'存到數(shù)組s中,定義了一個字符指針變量p,在接下來for循環(huán)中,循環(huán)體共執(zhí)行了三次,第一次p指向s[1],所以此時(shí)輸出的p所指字符串的值為BCD,第二次循環(huán)p指向s[2],此時(shí)輸出p所指的字符串的值為CD,第三次循環(huán)p指向s[3],此時(shí)輸出的p所指的字符串的值為D。所以,4個選項(xiàng)中選項(xiàng)D符合題意。
43.D解析:本題考查語句的基本構(gòu)成。選項(xiàng)A)中j=5后面少了一個分號:選項(xiàng)B)中少了“}”;選項(xiàng)C)不是一個完整的函數(shù)定義格式,一個完整的函數(shù)定義格式還包括一對花括號:選項(xiàng)D)正確,是一個空語句。
44.B解析:執(zhí)行“p=f(i,++i):”后i的值為2,所以a和b的值都為2,則c=0,選項(xiàng)B正確。
45.A
46.D解析:putchar(c1)輸出1,putchar(c2)輸出2,printf('%c%c\\n',c5,c6)輸出45。
47.D解析:在C語言的標(biāo)準(zhǔn)中,short占2個字節(jié)、long占4個字節(jié),但int的大小和編譯系統(tǒng)相關(guān)。例如在Turbo\u3000C\u30002.0中,int占2個字節(jié),但在VisualC++6.0(VC6可以用做C語言編譯器)中占4個字節(jié)。故本題應(yīng)該選擇D。
48.C數(shù)據(jù)結(jié)構(gòu)與算法:數(shù)據(jù)結(jié)構(gòu)的基本概念[評析]邏輯結(jié)構(gòu)反映數(shù)據(jù)元素之間的邏輯關(guān)系,線性結(jié)構(gòu)表示數(shù)據(jù)元素之間一對一的關(guān)系,非線性結(jié)構(gòu)表示數(shù)據(jù)元素之間一對多或多對一的關(guān)系。線性結(jié)構(gòu)和非線性結(jié)構(gòu)是根據(jù)數(shù)據(jù)元素之間關(guān)系的不同特性加以分類的,即是從邏輯上加以分類的。
49.D解析:線性表的順序存儲是用一片連續(xù)的空間來存放數(shù)據(jù)元素,其特點(diǎn)是邏輯上相鄰的元素在物理位置上也相鄰。數(shù)據(jù)元素之間邏輯上的先后關(guān)系自動隱含在物理位置的相鄰元素之中,因此,不需要另外開辟空間來保存元素之間的關(guān)系。
50.D解析:帶參數(shù)的宏定義如下:#define宏名(參數(shù))字符串。本題中,宏定義的作用是指定用標(biāo)識符PI來代替“3.1415926”這個字符串,但宏定義不是C語句,不必在行末加分號。
51.B解析:考查了測字符串長度函數(shù)strlen。如果一個字符數(shù)組中存放一個字符串,則函數(shù)strlen的值為'\\0'之前的全部字符個數(shù),也包括空格在內(nèi)。
52.D
53.B解析:本題考查的知識點(diǎn)是函數(shù)的參數(shù)類型、函數(shù)值類型及函數(shù)調(diào)用.fun()函數(shù)是將傳進(jìn)來的兩個整型參數(shù)相加,把和作為函數(shù)值返回,.注意返回值為float型.在主函數(shù)調(diào)用了兩次fun()函數(shù),第一次調(diào)用時(shí)把表達(dá)式“a+c”和變量“b”的值求和,得到15轉(zhuǎn)換為15.0作為函數(shù)的返回值。第二次調(diào)用把第一次調(diào)用的返回值通過強(qiáng)制類型轉(zhuǎn)換成int型15,再和表達(dá)式“a-c”相加,得到結(jié)果9,轉(zhuǎn)換成float型作為函數(shù)值返回。由于輸出格式符為“%3.0f”輸出時(shí)沒有小數(shù)位,故輸出為9.所以4個選項(xiàng)中B正確。
54.D解析:本題考查指針變量的賦值。
選項(xiàng)A)中,p1、p2本身都是地址變量,不能再將p1取地址賦給p2:選項(xiàng)B)中,不能將整型數(shù)據(jù)直接賦值給指針型數(shù)據(jù);選項(xiàng)C)中,*p2代表了一個整型變量,而*p2=p1這個語句試圖把一個地址值放入一個整犁變量中是錯誤的;選項(xiàng)D)中指針問的賦值是正確的。
55.C解析:將題目中的定義語句去掉前面的typedef和后面的NEW(分號保留),就是一條完整的結(jié)構(gòu)體定義語句,其中struct是說明符,ST是結(jié)構(gòu)體名,大括號里面的是結(jié)構(gòu)體成員的定義。此時(shí)要聲明該結(jié)構(gòu)體變量時(shí)需要使用struct加結(jié)構(gòu)體名一起來聲明,struetST一起構(gòu)成一個結(jié)構(gòu)體類型,就好像字符類型char.若只去掉前面的typedef,就是一條結(jié)構(gòu)體定義同時(shí)聲明一個結(jié)構(gòu)體變量NEW的語句,因?yàn)镹EW的前面部分是structST的完整寫法。可以看作是structST.C語言允許用typedef說明一種新類型名,其語法格式為:
typedef類型名標(biāo)識符;
以后就可以用該標(biāo)識符來代替被說明的類型名了。因此,當(dāng)前面存在typedef時(shí),該語句就變成了給stmctST的完整寫法定義一個新的名稱NEW。所以,此時(shí)的NEW是一個結(jié)構(gòu)體類型,它相當(dāng)于structST,即可以和char一樣單獨(dú)用來聲明該結(jié)構(gòu)體變量,而ST只是一個結(jié)構(gòu)體名,不能單獨(dú)用來聲明變量。所以,4個選項(xiàng)中C符合題意。
56.C解析:軟件測試的目標(biāo)是在精心控制的環(huán)境下執(zhí)行程序,以發(fā)現(xiàn)程序中的錯誤,給出程序可靠性的鑒定。它有3個方面的重要特征,即測試的挑剔性、完全測試的不可能性及測試的經(jīng)濟(jì)性。其中沒有測試的可靠性這一說法。注意:軟件測試與軟件調(diào)試的概念,以及相應(yīng)的方法。
57.B解析:對二叉樹的前序遍歷是指:先訪問根結(jié)點(diǎn),然后訪問左子樹,最后訪問右子樹,并且,在訪問左、右子樹時(shí),先訪問根結(jié)點(diǎn),再依次訪問其左,右子樹。
58.C解析:本題考查了一維字符數(shù)組的定義和初始化。選項(xiàng)C中str[10]初始化為空,可以不必進(jìn)行類似''的空賦值,字符數(shù)組若沒有進(jìn)行初始化賦值,默認(rèn)的字符為空,并且定義完str數(shù)組后,應(yīng)該用“,”分隔而不是“?!保赃x項(xiàng)C錯誤。
59.D解析:C語言中,字符串是用一對雙引號括起來的字符序列,并用字符型數(shù)組來存放,故選項(xiàng)A)、C)不是字符中;選項(xiàng)B)定義的是一個字符變量str,不能用來存放字符串,所以不正確。
60.C
61.B只有B)選項(xiàng)369可以用無符號整數(shù)來表示和存儲。A)選項(xiàng)~369有負(fù)號。選項(xiàng)c)0.369是qJ、數(shù),它們都不能用無符號整數(shù)類存儲。選項(xiàng)D)是一個整數(shù)集合需要用數(shù)組來存儲。
62.D解析:本題的考點(diǎn)是鏈表的指針操作。要想將q所指節(jié)點(diǎn)從鏈表中刪除,同時(shí)要保持鏈表的連續(xù),從圖上看,應(yīng)該將p->next=r,由于q->next、p->next->next都指向r,因此p->next=q->next、p->next=p->next->next同樣可以實(shí)現(xiàn)指定的操作。因此選項(xiàng)A、B、C都能完成指定操作。而選項(xiàng)D“p=q->next”只是將指針p指向了r,不能完成指定的操作。因此正確選項(xiàng)是D。
63.B結(jié)構(gòu)化分析方法是結(jié)構(gòu)化程序設(shè)計(jì)理論在軟件需求分析階段的運(yùn)用。而結(jié)構(gòu)化分析就是使用數(shù)據(jù)流圖(DFD)、數(shù)據(jù)字典(DD)、結(jié)構(gòu)化英語、判定表和判定樹等工具,來建立一種新的、稱為結(jié)構(gòu)化規(guī)格說明的目標(biāo)文檔。所以數(shù)據(jù)流程圖是在需求分析階段使用的。
64.D
65.Afun函數(shù)將空格之前的小寫字母修改為大寫字母,所以答案選A)。
66.A軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件、支撐軟件。操作系統(tǒng)、編譯程序、匯編程序、網(wǎng)絡(luò)軟件、數(shù)據(jù)庫管理系統(tǒng)都屬于系統(tǒng)軟件,因此B)、C)、D)都是系統(tǒng)軟件,只有A)是應(yīng)用軟件。
67.B函數(shù)聲明的一般形式為:“類型說明符被調(diào)函數(shù)名(類型形參,類型形參,……);”或“類型說明符被調(diào)函數(shù)名(類型,類型,……);”由于函數(shù)首部為intfun(doubl
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人抵押貸款協(xié)議模板版
- 專業(yè)借款中介服務(wù)協(xié)議2024版B版
- 月度團(tuán)隊(duì)總結(jié)模板
- 2025年度茶葉品牌加盟連鎖經(jīng)營協(xié)議范本4篇
- 個人吊車租賃協(xié)議
- 二零二五年度跨境電商進(jìn)口貿(mào)易合同樣本3篇
- 2025年度智能家居系統(tǒng)定制銷售合同4篇
- 2025年度智能交通管理系統(tǒng)全國代理合同4篇
- 二零二五年度存單質(zhì)押養(yǎng)老產(chǎn)業(yè)金融服務(wù)合同3篇
- 2024版移動通信網(wǎng)絡(luò)建設(shè)與維護(hù)合同
- 農(nóng)民工工資表格
- 【寒假預(yù)習(xí)】專題04 閱讀理解 20篇 集訓(xùn)-2025年人教版(PEP)六年級英語下冊寒假提前學(xué)(含答案)
- 2024年突發(fā)事件新聞發(fā)布與輿論引導(dǎo)合同
- 地方政府信訪人員穩(wěn)控實(shí)施方案
- 小紅書推廣合同范例
- 商業(yè)咨詢報(bào)告范文模板
- 2024年智能監(jiān)獄安防監(jiān)控工程合同3篇
- 幼兒園籃球課培訓(xùn)
- AQ 6111-2023個體防護(hù)裝備安全管理規(guī)范知識培訓(xùn)
- 老干工作業(yè)務(wù)培訓(xùn)
- 基底節(jié)腦出血護(hù)理查房
評論
0/150
提交評論