



版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
.C語(yǔ)言中的非執(zhí)行語(yǔ)句不會(huì)被編譯,不會(huì)生成二進(jìn)制的機(jī)器指令,所以A)錯(cuò)誤。由C語(yǔ)言構(gòu)成的指令序列稱C源程序,C源程序經(jīng)過(guò)C語(yǔ)言編譯程序編譯之后生成一個(gè)后綴為.OBJ的二進(jìn)制文件(稱為目標(biāo)文件);最后要由“連接程序''把此.OBJ文件與C語(yǔ)言提供的各種庫(kù)函數(shù)連接起來(lái)生成一個(gè)后綴為.EXE的可執(zhí)行文件。C語(yǔ)言中ハ進(jìn)制整型常量的開(kāi)頭是數(shù)字0,十六進(jìn)制整型常量的開(kāi)頭數(shù)字是Ox。C語(yǔ)言中的實(shí)型常量有兩種表示形式:小數(shù)形式,小數(shù)形式表示的實(shí)型常量必須要有小數(shù)點(diǎn);指數(shù)形式,以''e"或''E"后跟ー個(gè)整數(shù)來(lái)表示以10為底數(shù)的基數(shù),冃規(guī)定字母e或E之前必須要有數(shù)字,月ーe或E后面的指數(shù)必須為整數(shù)。B)選項(xiàng)中028錯(cuò)誤,ハ進(jìn)制中沒(méi)有數(shù)字8。C)選項(xiàng)中4el.5中e后面的指數(shù)不是整數(shù)。D)選項(xiàng)中3.e5小數(shù)點(diǎn)后面缺少數(shù)字。.C語(yǔ)言中標(biāo)識(shí)符由字母、下劃線、數(shù)字組成,且開(kāi)頭必須是字母或下劃線。4.若有代數(shù)式屮”I(其中e僅代表自然對(duì)數(shù)的底數(shù),不是變量),則以下能夠正確表示該代數(shù)式的C語(yǔ)言表達(dá)式是(A)〇sqrt(fabs(pow(n,x)+exp(x)))sqrt(fabs(pow(n,x)+pow(x,e)))sqrt(abs(nAx+eAx))sqrt(fabs(pow(x,n)+exp(x)))B)選項(xiàng)中函數(shù)pow(x,e)錯(cuò)誤應(yīng)該直接使用exp(x)函數(shù)。C)選項(xiàng)中函數(shù)abs(Mx+e人x)錯(cuò)誤,應(yīng)該使用fabs()返回浮點(diǎn)數(shù)的絕對(duì)值。D)選項(xiàng)中pow(x,n)參數(shù)順序錯(cuò)誤。若有定義:doublea=22;inti=0,k=18;,則不符合C語(yǔ)言規(guī)定的賦值語(yǔ)句是()i=(a+k)<=(i+k);i=a%ll;a=a++,i++i=!a;【解析】取模運(yùn)算符"%",二元運(yùn)算符,具有左結(jié)合性,參與運(yùn)算的量均為整型。選項(xiàng)B中的a變量是double實(shí)型,所以B)不符合規(guī)定。#include<stdio.h>main(){ints,t,A=10;doubleB=6;s=sizeof(A);t=sizeof(B);printf("%d,%d\n",s,t);在VC6.0平臺(tái)上編譯運(yùn)行,程序運(yùn)行后的輸出結(jié)果是()。A)10,6B)4,402,4D)4,8【解析】C語(yǔ)言中利用sizeof()函數(shù)判斷數(shù)據(jù)類型長(zhǎng)度,在VC6.0平臺(tái)中,整型int占有4個(gè)字節(jié),double型數(shù)據(jù)占有8個(gè)字節(jié)。#include<stdio.h>main(){chara,b,c,d;scanf(',%c%cH,&a,&b);c=getchar(); d=getchar();printf(M%c%c%c%c\nn,a,b,c,d);}當(dāng)執(zhí)行程序時(shí),按下列方式輸入數(shù)據(jù)(從第1列開(kāi)始,<CR>代表回車,注意:回車也是ー個(gè)字符)12<CR>34<CR>則輸出結(jié)果是()〇1234121234123【解析】按照從鍵盤輸入的數(shù)據(jù)可以判斷字符1給了變量a,字符2給了變量b,字符<CR>即回車給了變量c,字符3給了變量do所以打印輸出的結(jié)果為D)選項(xiàng)。有以下程序:#include<stdio.h>main(){inta=0,b=0,c=0,d=0;if(a=1)b=l;c=2;elsed=3;printf("%d,%d,%d,%d\n",a,b,c,d);}程序輸出()o1,1,2,00,0,0,30編譯有錯(cuò)D)0,1,2,0【解析】本題中if(a=l)b=l;與elsed=3;之間多了語(yǔ)句c=2;所以會(huì)出現(xiàn)else語(yǔ)句的位置錯(cuò)誤的編譯失敗提示。for(k=l;k<3;k++)后面直接跟了空語(yǔ)句";”所以在循環(huán)內(nèi)部什么操作也不做break是結(jié)束整個(gè)循環(huán)體,而continue是結(jié)束單次循環(huán)。不能將一個(gè)整數(shù)直接賦給指針變量作為地址,所以A)是錯(cuò)誤的。函數(shù)的返回值可以是地址,即指針。函數(shù)調(diào)用中形參值的變化不會(huì)傳遞給實(shí)參。指針是用來(lái)存放地址的變量,用(類型名?指針變量名)的形式定義。賦值時(shí)應(yīng)將某個(gè)變量地址即&x賦給指針變量float*p=&x;設(shè)有定義:charp[]={T,'2',3},*q=p;,以下不能計(jì)算出ー個(gè)char型數(shù)據(jù)所占字節(jié)數(shù)的表達(dá)式是()〇A)sizeof(p)B)sizeof(char)sizeof(*q)sizeof(p[0])【解析】根據(jù)題目中的定義可以知道sizeof(p),計(jì)算的是數(shù)組p中所有元素所占用的字節(jié)數(shù),而不是char型數(shù)據(jù)所占字節(jié)數(shù)。strlen(p)p為字符串,只雙引號(hào)類的字符個(gè)數(shù),不加5。在C語(yǔ)言中,只有在使用時(shí)才占用內(nèi)存單元的變量,其存儲(chǔ)類型是(c)。auto和staticextemfnregisterauto和registerstaticfUregister預(yù)處理命令是以"#"號(hào)開(kāi)頭的命令,它們不是C語(yǔ)言的可執(zhí)行命令,這些命令應(yīng)該在函數(shù)之外書寫,一般在源文件的最前面書寫,但不是必須在起始位置書寫,所以B),C)錯(cuò)誤。。語(yǔ)言的預(yù)處理能夠?qū)崿F(xiàn)宏定義和條件編譯等功能,所以D)錯(cuò)誤。有以下程序:#include<stdio.h>#include<stdlib.h>intfun(intn){int*p;p=(int*)malloc(sizeof(int));*p=n;return*p;main(){inta;a=fun(10);printf("%d\n”,a+fun(10));)程序的運(yùn)行結(jié)果是()。010〇20D)出錯(cuò)【解析】malloc(sizeof(int))的作用是開(kāi)辟ー個(gè)長(zhǎng)度為sizeof(int)存儲(chǔ)空間,并通過(guò)強(qiáng)制類型轉(zhuǎn)換(int*)將此存儲(chǔ)空間的地址賦給了一個(gè)整型的指針變量p。然后執(zhí)行語(yǔ)句*p=n,使得?p的值為10,并通過(guò)return返回此值,即a的值為10。然后在主函數(shù)市輸出a+fun(10)=10+10=20-有以下程序:#include<stdio.h>main(){unsignedchara=8,c;c=a?3;printf("%d\n",c);)程序運(yùn)行后的輸出結(jié)果是()。161〇32D)0【解析】無(wú)符號(hào)整型變量a的值為8,二進(jìn)制表示為00001000,右移3位后為00000001,即十進(jìn)制的1,所以輸出1。設(shè)有定義:intx=2;,以下表達(dá)式中,值不為6的是( )〇2*x,x+=2x++,2*xx*=(l+x)x*=x+l參考答案:A(15)A【解析】A)選項(xiàng)中逗號(hào)表達(dá)式先計(jì)算第一表達(dá)式2*x,然后計(jì)算表達(dá)式x+=2的值,即x=x+2即4,整個(gè)逗號(hào)表達(dá)式為第二個(gè)表達(dá)式的值4,所以選擇A)0B)選項(xiàng)中首先計(jì)算逗號(hào)表達(dá)式中第一表達(dá)式x++.此時(shí)x為3?在執(zhí)行第二個(gè)表達(dá)式2*x=2*3=6,所以逗號(hào)表注式為第二個(gè)表送式的值6。C)選項(xiàng)的賦值表達(dá)式可以表示為x=x*(1+x)=2*(1+2)=6。D)選項(xiàng)中的表達(dá)式可以表示為x=x*(x+1)=2*3=60有以下程序:#include<stdio.h>main(){intx,y,z;x=y=l;z=x++,y++,++y;printf(n%d,%d,%d\nn,x,y,z);}程序運(yùn)行后的輸出結(jié)果是()〇2,3,32,3,22,3,12,2,1參考答案:C【解析】z=x++,y++,++y:因?yàn)橘x值運(yùn)算符的優(yōu)先級(jí)高于逗號(hào)運(yùn)算符的優(yōu)先級(jí),所以可以將上式表示成(z=x++),(y++),(++y)o然后從左向右先計(jì)算表達(dá)式z=x++,因?yàn)閤++先使用后自增,所以z的值為1,x的值為2。再計(jì)算逗號(hào)表達(dá)式第二個(gè)表達(dá)式y(tǒng)++,此時(shí)y的值為2,最后計(jì)算第三個(gè)表達(dá)式++y,y的值為3。有以下程序:#include<stdio.h>main(){intx,y,z;x=y=l;z=x++,y++,++y;printf("%d,%d,%d\n",x,y,z);}‘程序運(yùn)行后的輸出結(jié)果是(A)2,3,32,3,22,3,12,2,1參考答案:C【解析】z=x++,y++,++y:因?yàn)橘x值運(yùn)算符的優(yōu)先級(jí)高于逗號(hào)運(yùn)算符的優(yōu)先級(jí),所以可以將上式表示成(z=x++),(y++),(++y)o然后從左向右先計(jì)算表達(dá)式z=x++,因?yàn)閤++先使用后自增,所以z的值為1,x的值為2。再計(jì)算逗號(hào)表達(dá)式第二個(gè)表達(dá)式y(tǒng)++,此時(shí)y的值為2,最后計(jì)算第三個(gè)表達(dá)式++y,y的值為3。若有定義:floatx=1.5;inta=l,b=3,c=2;則正確的switch語(yǔ)句是()。switch(a+b){case1:printf("*\nn);case2+1: printf(n**\n"); }switch((int)x);{case1: printf(”*\n”);case2:printf("**\nn);}switch(x){case1.0:printf(,,*\nn);case2.0:printf(n**\nn);}switch(a+b){case1:printf(”*\n”);casec:printf(n**\n");}參考答案:a【解析】B)選項(xiàng)中switch((int)x);語(yǔ)句中不應(yīng)該有最后的分號(hào)。switch(exprl),中的exprl不能用浮點(diǎn)類型或long類型,也不能為ー個(gè)字符串,所以C)錯(cuò)誤。case后面常量表達(dá)式的類型必須與switch后面表達(dá)式的類型一致,所以D)錯(cuò)誤。有以下程序:#include<stdio.h>intadd(inta,intb){return(a+b);main(){intk,(*f)(),a=5,b=10;f=add;則以下函數(shù)調(diào)用語(yǔ)句錯(cuò)誤的是()〇A)k=f(a,b);B)k=add(a,b);C)k=(*f)(a,b);D)k=*f(a,b);參考答案:D【解析】D)選項(xiàng)中?f(a,b)表示調(diào)用后返回一個(gè)指向整型數(shù)據(jù)的地址指針,即該函數(shù)的返回值為指針類型,所以不能將其賦值給整形變量k。以下語(yǔ)句中存在語(yǔ)法錯(cuò)誤的是()〇charss[6][20];ss[l]="right?";charss()[20]={"right?"};char*ss[6];ss[l]="right?";D)char*ss()={"right?"};參考答案:A【解析】數(shù)組定義后,不可以對(duì)數(shù)組整體賦值,s是二維數(shù)組,因ss[l]是一維字符數(shù)組,即字符串,字符串賦值可以使用strcpy(ssロ],"righビ);這樣的形式,而選項(xiàng)A)中對(duì)二維數(shù)組中的第1''維(相當(dāng)于一個(gè)一維數(shù)組)賦值,是不可以的。選項(xiàng)B)和D)是定義時(shí)對(duì)數(shù)組初始化,這是可以的。選項(xiàng)C)中,將字符串在內(nèi)存中的首地址賦給指針數(shù)組的ー個(gè)元素,這是可以的。以下不能將s所指字符串正確復(fù)制到t所指存儲(chǔ)空間的是()doピt++=*s++;}while(*s);for(i=0;t[i]=s[i];i++);while(*t=*s){t++;s++]for(i=0,j=0;t[i++]=s|j++];);參考答案:A【解析】do{*t++=*s++;}while(*s);不能因?yàn)楫?dāng)?s=ヘ〇時(shí),while(*s)跳出循環(huán),這樣字符串結(jié)束標(biāo)志‘'O’沒(méi)有復(fù)制給*t,造成?t不完整。注意,*t++=*s++是先執(zhí)行?t=*s,然后才進(jìn)行t=t+l,s=s+l。B),C),D)都能將へ(T復(fù)制過(guò)去。全局變量的作用域是從聲明處到文件的結(jié)束,即由具體定義位置和extern說(shuō)明來(lái)決定范圍。以下敘述中錯(cuò)誤的是()〇A)可以通過(guò)typedef增加新的類型B)可以用typede會(huì)等已存在的類型用ー個(gè)新的名字來(lái)代表〇用typedef定義新的類型名后,原有類型名仍有效D)用typedef可以為各種類型起別名,但不能為變量起別名參考答案:A【解析】關(guān)鍵字typedef的作用只是將C語(yǔ)言中的已有的數(shù)據(jù)類型作了置換,并不是增加新的類型,所以A)錯(cuò)誤。有以下程序:#include<stdio.h>structS{inta,b;}data[2]={10,100,20,200);main(){structSp=data[l];printf("%d\n",++(p.a));)程序運(yùn)行后的輸出結(jié)果是()〇10112021參考答案:D【解析】聲明data是結(jié)構(gòu)S數(shù)組。初始化data[0].a=10;data[〇].b=100;data[l],a=20;dataロ].b=200。主函數(shù)中p=data[l];即p.a=data[l].a;p.b=data[l].b:執(zhí)行語(yǔ)句printf("%d\n",++(p.a));打印輸出時(shí)p.a先增1再打印。p.a=data[l].a=20,先增1等于21。有以下程序:#include<stdio.h>#definePT3.5;#defineS(x)PT*x*x;main(){inta=l,b=2;printfC'%4.1f\nH,S(a+b)); }程序運(yùn)行后的輸出結(jié)果是()〇7.531.50程序有錯(cuò)無(wú)輸出結(jié)果D)14.0參考答案:C【解析】宏定義不是C語(yǔ)句,末尾不需要有分號(hào)。所以語(yǔ)句printf("%4.1An",S(a+b));^^^printf("%4.1f\n",3.5;*a+b*a+b;);所以程序會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤。有以下程序:#include<stdio.h>main(){unsignedchara=2,b=4,c=5,d;d=aIb;d&=c;printf("%d\n",d); }程序運(yùn)行后的輸出結(jié)果是()〇3456參考答案:B【解析】&按位與,如果兩個(gè)相應(yīng)的二進(jìn)制位都為1,則該位的結(jié)果值為1,否則為0。I按位或,兩個(gè)相應(yīng)的二進(jìn)制位中只要有??個(gè)為1,該位的結(jié)果值為1。2的二進(jìn)制為10,4的二進(jìn)制為100,所以做或運(yùn)算結(jié)果為110,該數(shù)與5即101做與操作結(jié)果為!00,即4。在長(zhǎng)度為n的有序線性表中進(jìn)行二分查找,最壞情況下需要比較的次數(shù)是()〇A)〇(〃)B)O(/l2)OD)0(獻(xiàn)華”)參考答案:C【解析】當(dāng)有序線性表為順序存儲(chǔ)時(shí)才能用二分法查找??梢宰C明的是對(duì)于長(zhǎng)度為n的有序線性表,在最壞情況下,二分法查找只需要比較い8H次,而順序查找需要比較n次。在數(shù)據(jù)管理技術(shù)發(fā)展的三個(gè)階段中,數(shù)據(jù)共享最好的是()。A)人工管理階段B)文件系統(tǒng)階段C)數(shù)據(jù)庫(kù)系統(tǒng)階段D)三個(gè)階段相同參考答案:C【解析】數(shù)據(jù)管理發(fā)展至今已經(jīng)歷了三個(gè)階段:人工管理階段、文件系統(tǒng)階段和數(shù)據(jù)庫(kù)系統(tǒng)階段。其中最后??個(gè)階段結(jié)構(gòu)簡(jiǎn)單,使用方便邏輯性強(qiáng)物理性少,在各方面的表現(xiàn)都最好,?直占據(jù)數(shù)據(jù)庫(kù)領(lǐng)域的主導(dǎo)地位,所以選擇C)。在面向?qū)ο蠓椒ㄖ?不屬于"對(duì)象”基本特點(diǎn)的是()〇一致性B)分類性C)多態(tài)性D)標(biāo)識(shí)唯一性參考答案:A【解析】對(duì)象有如下ー些基本特點(diǎn):標(biāo)識(shí)唯一性、分類性、多態(tài)性、封裝性、模塊獨(dú)立性好。所以選擇A)。下列敘述中正確的是()〇A)順序存儲(chǔ)結(jié)構(gòu)的存儲(chǔ)一定是連續(xù)的,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)的存儲(chǔ)空間不一定是連續(xù)的B)順序存儲(chǔ)結(jié)構(gòu)只針對(duì)線性結(jié)構(gòu),鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)只針對(duì)非線性結(jié)構(gòu)C)順序存儲(chǔ)結(jié)構(gòu)能存儲(chǔ)有序表,鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)不能存儲(chǔ)有序表D)鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)比順序存儲(chǔ)結(jié)構(gòu)節(jié)省存儲(chǔ)空間參考答案:A【解析】鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)既可以針對(duì)線性結(jié)構(gòu)也可以針對(duì)非線性結(jié)構(gòu),所以B)與C)錯(cuò)誤。鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中每個(gè)結(jié)點(diǎn)都由數(shù)據(jù)域與指針域兩部分組成,增加了存儲(chǔ)空間,所以D)錯(cuò)誤。若變量已正確定義,在1“\¥即日田!"("%(1\ガ,1<);中,以下不可替代W的是()。A)aob+cch=getchar()a==b+ca++參考答案:A【解析】選項(xiàng)A)是非法的表達(dá)式,C語(yǔ)言中沒(méi)有<>運(yùn)算符。有以下程序:#include<stdio.h>main(){intal,a2;charcl,c2;scanf(1^%d%c%d%c,?,&al,&cl,&a2,&c2);printf("%d,%c,%d,%c",al,cl,a2,c2);若想通過(guò)鍵盤輸入,使得al的值為12,a2的值為34,cl的值為字符a,c2的值為字符b,程序輸出結(jié)果是:12,a,34,b則正確的輸入格式是(以下ーイ弋表空格,<CR>代表回車)( )〇12一,a34-,b<CR>12ーSa-34]ー土b<CR>12,a,34,b<CR>12a34b<CR>參考答案:D【解析】在輸入多個(gè)數(shù)據(jù)時(shí),若格式控制串中無(wú)非格式字符,則認(rèn)為所有輸入的字符均為有效字符。所以應(yīng)按選項(xiàng)D)的順序輸入數(shù)據(jù)。若有定義語(yǔ)句:doublea,*p=&a: 以下敘述中錯(cuò)誤的是()。A)定義語(yǔ)句中的?號(hào)是ー個(gè)間址運(yùn)算符B)定義語(yǔ)句中的?號(hào)是?一個(gè)說(shuō)明符〇定義語(yǔ)句中的p只能存放double類型變量的地址D)定義語(yǔ)句中,*p=&a把變量a的地址作為初值賦給指針變量p參考答案:A【解析】在變量定義doublea,*p=&a;中,?號(hào)是ー?個(gè)指針運(yùn)算符,而非間址運(yùn)算符,所以A)錯(cuò)誤。有以下程序:#include<stdio.h>voidfun(inta,intb){intt;t=a;a=b;b=t;}main(){intc[10]={1,2,3,4,5,67,8,9,0},i;for(i=0;i<10;i+=2)fun(c[i],c[i+l]);for(i=0;i<10;i++)printf("%d,",c[i]);printf("\n");)程序的運(yùn)行結(jié)果是()。A)1,2,3,4,5,6,7,8,9,0,B)2,1,4,3,6,5,8,7,0,9,〇0,9,8,7,6,5,4,3,2,1,D)0,1,2,3,4,5,6,7,8,9,參考答案:A【解析】函數(shù)調(diào)用中發(fā)生的數(shù)據(jù)傳送是單向的。即只能把實(shí)參的值傳送給形參,
而不能把形參的值反向地傳送給實(shí)參。因此在函數(shù)調(diào)用過(guò)程中,形參的值發(fā)生
改變,而實(shí)參中的值不會(huì)變化,所以數(shù)組c中的元素的值并沒(méi)有變化,選擇A)。下列語(yǔ)句組中,正確的是()。char*s;s="Olympic";chars[7];s="Olympic";char*s;s={"Olympic"};chars[7];s={"Olympic"};參考答案:A【解析】字符型指針變量可以用選項(xiàng)A)的賦值方法:charts;s="Olympic",選項(xiàng)C)的寫法:char*s,s={"〇lympic"};是錯(cuò)誤的。字符數(shù)組可以在定義的時(shí)候初始化:chars[={"Olympic"};?或者chars口="Olympic",都是正確的。但是不可以在定義字符數(shù)組后,對(duì)數(shù)組名賦值。(數(shù)組名是常量,代表數(shù)組首地址)所以選項(xiàng)B)和選項(xiàng)D)都是錯(cuò)誤的。對(duì)于本例,選項(xiàng)B)、D)中字符數(shù)組s的大小至少為8,才能存放下字符串。(字符串的末尾都有結(jié)束標(biāo)志"、0")。有以下程序:#include<stdio.h>intf(intn);main(){inta=3,s;s=f(a);s=s+f(a);printf("%d\n",s);}intf(intn){staticinta=1;n+=a++;returnn;)程序運(yùn)行后的輸出結(jié)果是()〇98710參考答案:A【解析】題目中靜態(tài)局部變量a,在靜態(tài)存儲(chǔ)區(qū)內(nèi)分配存儲(chǔ)單元,在程序整個(gè)運(yùn)行期間都不釋放。所以第一次調(diào)用函數(shù)執(zhí)行n+=a++;時(shí)a先與n相加在再進(jìn)行自增。n的值為4,a的值為2,月ーa變量執(zhí)行完后空間沒(méi)有釋放。再執(zhí)行s=s+f(a)時(shí),s的值為4,調(diào)用f(a)函數(shù)時(shí)n的返回值為n=3+2=5,且此時(shí)a的值為3了。所以s的值為9。設(shè)有定義:structcomplex{intreal,unreal;}datal={1,8},data2;則以下賦值語(yǔ)句中錯(cuò)誤的是()。data2=(2,6);data2=datal;data2.real=datal.real;data2.real=data1.unreal;參考答案:A【解析】A)選項(xiàng)中可以在聲明變量的同事為data2賦值,但是data2=(2,6);應(yīng)寫作data2={2,6};所以選擇A)。有以下程序:#include<stdio.h>#include<string.h>typedefstruct{charname[9];charsex;intscore[2];}STU;STUf(STUa){STUb={nZhaon,'m',85,90};inti;strcpy(,);a.sex=b.sex;for(i=0;i<2;i++)a.score[i]=b.score[i];returna;)main(){STUc={“Qian”,T,95,92},d;d=f(c);printf(H%s,%c,%d,%d,",,d.sex,d.score[0],d.score[l]);printf("%s,%c,%d,%d\n",,c.sex,c.score[0],c.scorefll);)程序運(yùn)行后的輸出結(jié)果是()〇Zhao,m,85,90,Qian,f,95,92Zhao,m,85,90,Zhao,m,85,90Qian,f,95,92,Qian,f,95,92Qian,295,92,Zhao,m,85,90參考答案:A【解析】本題考查的是函數(shù)調(diào)用時(shí)的參數(shù)傳遞問(wèn)題。程序在調(diào)用函數(shù)f時(shí),傳給函數(shù)f的參數(shù)只是結(jié)構(gòu)變量C在棧中的ー個(gè)拷貝,函數(shù)f所做所有操作只是針對(duì)這個(gè)數(shù)據(jù)拷貝進(jìn)行的修改,這些都不會(huì)影響變量C的值。以下關(guān)于宏的敘述中正確的是()〇A)宏替換沒(méi)有數(shù)據(jù)類型限制B)宏定義必須位于源程序中所有語(yǔ)句之前〇宏名必須用大寫字母表示D)宏調(diào)用比函數(shù)調(diào)用耗費(fèi)時(shí)間參考答案:A【解析】宏定義寫在函數(shù)的花括號(hào)外邊,作用域?yàn)槠浜蟮某绦?通常在文件的最開(kāi)頭,所以B)選項(xiàng)中宏定義必須位于源程序中所有語(yǔ)句之前是錯(cuò)誤的。宏名一般用大寫,但不是必須用大寫,所以C)選項(xiàng)錯(cuò)誤。宏展開(kāi)不占運(yùn)行時(shí)間,只占編譯時(shí)間,函數(shù)調(diào)用占運(yùn)行時(shí)間(分配內(nèi)存、保留現(xiàn)場(chǎng)、值傳遞、返回值),所以D)選項(xiàng)錯(cuò)誤。設(shè)有以下語(yǔ)句:inta=1,b=2,c;c=aA(b?2);執(zhí)行后,c的值為()〇7986參考答案:B【解析】b為2,二進(jìn)制為00000010,執(zhí)行左移兩位操作后為00001000,然后與a00000001做異或(不同為1,相同為〇)操作結(jié)果為00001001,即十進(jìn)制的9將E-R圖轉(zhuǎn)換為關(guān)系模式時(shí),實(shí)體和聯(lián)系都可以表示為()。A)屬性B)鍵C)關(guān)系D)域參考答案:C【解析】從E—R圖到關(guān)系模式的轉(zhuǎn)換是比較直接的,實(shí)體與聯(lián)系都可以表示成關(guān)系,E—R圖中屬性也可以轉(zhuǎn)換成關(guān)系的屬性。有兩個(gè)關(guān)系R,S如下:由關(guān)系R通過(guò)運(yùn)算得到關(guān)系S,則所使用的運(yùn)算為()。
擇影入接選投插連ABcD擇影入接選投插連ABcD參考答案:B【解析】投影運(yùn)算是指對(duì)于關(guān)系內(nèi)的域指定可引入新的運(yùn)算。本題中S是在原有關(guān)系R的內(nèi)部進(jìn)行的,是由R中原有的那些域的列所組成的關(guān)系。所以選擇B)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中的核心問(wèn)題是數(shù)據(jù)庫(kù)的設(shè)計(jì)軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應(yīng)用軟件的是()〇A)編譯程序B)操作系統(tǒng)〇教務(wù)管理系統(tǒng)D)匯編程序參考答案:C【解析】編譯軟件、操作系統(tǒng)、匯編程序都屬于系統(tǒng)軟件,只有C)教務(wù)管理系統(tǒng)ォ是應(yīng)用軟件。下列排序方法中,最壞情況下比較次數(shù)最少的是()〇A)冒泡排序B)簡(jiǎn)單選擇排序C)直接插入排序D)堆排序參考答案:D【解析】冒泡排序與簡(jiǎn)單插入排序與簡(jiǎn)單選擇排序法在最壞情況下均需要比較n(n-l)/2次,而堆排序在最壞情況下需要比較的次數(shù)是疝性’有以下程序#include<stdio.h>voidfun2(chara,charB)printf("%c%c",a,b);}chara="A',b="B';voidfunl(){a='C;b='D';)main(){funl();printf("%c%c",a,b);fun2('E','F');程序的運(yùn)行結(jié)果是ABEFCDEFABCDCDAB參考答案:B【解析】本題考察的是變量的作用范圍。如果在同一個(gè)源文件中,外部變量與局部變量同名,則在局部變量的作用范圍內(nèi),外部變量被"屏蔽",即不起作用。本題中,在funl()和main。函數(shù)內(nèi)訪問(wèn)的是全局變量a和b,在fun2()函數(shù)中訪問(wèn)的是形參變量a和b。所以,main()函數(shù)中的printf()函數(shù)輸出的是在funl()函數(shù)中被改變的全局變量a和b的值CD,而fun2()函數(shù)中輸出的是傳遞給它的實(shí)參值EF。因此B選項(xiàng)正確。有以下程序#include<stdio.h>#include<string.h>main(){charp[20]={'a','b','c','d'},q[]="abc",r[]="abcde";strcat(p,r);strcpy(p+strlen(q),q);printf("%d\n",strlen(p));程序運(yùn)行后的輸出結(jié)果是119〇6D)7參考答案:C【解析】strcpy:字符串拷貝函數(shù);strlen:求字符串長(zhǎng)度函數(shù)(注意:不包含字符串結(jié)束標(biāo)記字符’\0');strcat:字符串連接函數(shù)。執(zhí)行完語(yǔ)句strcat(p,r);后,p數(shù)組中存儲(chǔ)的元素為a,b,c,d,a,b,c,d,e;執(zhí)行語(yǔ)句strcpy(p+strlen(q),q);得到的結(jié)果是將q所指向的字符串拷貝至p+strlen(q)開(kāi)始的存儲(chǔ)位置,因?yàn)閟trlen的值為3,即p+3開(kāi)始存儲(chǔ)q中的元素。所以執(zhí)行完strcpy(p+strlen(q),q)語(yǔ)句后,字符數(shù)組p[20]的存儲(chǔ)元素為a,b,c,a,b,c;所以strlen(p)的結(jié)果為6。因此C選項(xiàng)正確。若有定義語(yǔ)句:chars[10]="1234567\0\0";則strlen(s)的值是78〇9D)10參考答案:A【解析】strlen。函數(shù):是計(jì)算字符串長(zhǎng)度時(shí),遇到結(jié)束標(biāo)識(shí)為止,且長(zhǎng)度不包括結(jié)束標(biāo)識(shí)。本題中字符串,從第一個(gè)字符開(kāi)始,遇到第一個(gè)結(jié)束標(biāo)識(shí)‘、0’為止,注意'、0'不占字符串長(zhǎng)度,所以字符串長(zhǎng)度為7。因此A選項(xiàng)正確。設(shè)有定義:char*c;以下選項(xiàng)中能夠使C正確指向ー個(gè)字符串的是A)charstr[]="string";c=str;B)scanf("%s”,c);c=getchar();*c="string";參考答案:a【解析】A選項(xiàng)為正確用法,先將字符串存于字符數(shù)組中,然后將數(shù)組名賦給字符指針。(數(shù)組名代表數(shù)組首地址,定義數(shù)組時(shí)為其分配確定地址)。C選項(xiàng)錯(cuò)誤,getchar()函數(shù)輸入個(gè)字符給字符型變量,而不是字符指針。B選項(xiàng)和D選項(xiàng)有類似的錯(cuò)誤,兩個(gè)選項(xiàng)并無(wú)語(yǔ)法錯(cuò)誤,但運(yùn)行時(shí)可能會(huì)出現(xiàn)問(wèn)題。因?yàn)樵贐選項(xiàng)和D選項(xiàng)中,字符指針沒(méi)有被賦值,是個(gè)不確定的值,指向?個(gè)不確定的內(nèi)存區(qū)域,這個(gè)區(qū)域可能存放有用的指令或數(shù)據(jù)。在這個(gè)不確定的區(qū)域重新存放字符串,可能會(huì)發(fā)生無(wú)法預(yù)知的錯(cuò)誤。因此A選項(xiàng)正確。若有以下定義intx[10],*pt=x;則對(duì)x數(shù)組元素的正確引用是pt+3*&x[10]*(pt+10)*(x+3)參考答案:D【解析】沒(méi)有A選項(xiàng)的引用形式。?與&放在ー起作用抵消,所以B選項(xiàng)錯(cuò)誤,最大只能引用到x[9]。?(pt+i)表示引用指針pt所指元素后的第i個(gè)元素,所以C選項(xiàng)錯(cuò)誤,最大只能為?(pt+9)。因此D選項(xiàng)正確。若有以下函數(shù)首部intfun(doublex[10],int*n)則下面針對(duì)此函數(shù)的函數(shù)聲明語(yǔ)句中正確的是intfun(double,int);intfun(double*,int*);intfun(double*x,intn);intfun(doublex,int*n);參考答案:B【解析】函數(shù)聲明的一般形式為:類型說(shuō)明符被調(diào)函數(shù)名(類型形參,類型形參…);或?yàn)?類型說(shuō)明符被調(diào)函數(shù)名(類型,類型...);由于函數(shù)首部為intfun(doublex[10],int*n),因此B選項(xiàng)正確。若有以下函數(shù)首部intfun(doublex[10],int*n)則下面針對(duì)此函數(shù)的函數(shù)聲明語(yǔ)句中正確的是intfun(double,int);intfun(double*,int*);intfun(double*x,intn);intfun(doublex,int*n);參考答案:B【解析】函數(shù)聲明的一般形式為:類型說(shuō)明符被調(diào)函數(shù)名(類型形參,類型形參...);或?yàn)?類型說(shuō)明符被調(diào)函數(shù)名(類型,類型...);由于函數(shù)首部為intfun(doublex[10],int*n),因此B選項(xiàng)正確。
以下定義語(yǔ)句中正確的是mta=b=O;charA=65+l,b=,b,;floata=l/*b=&a,*c=&b;doublea=0.0;b=l.l;參考答案:B【解析】A選項(xiàng)語(yǔ)句中b變量還沒(méi)有定義不能直接用于給a變量賦值。C選項(xiàng)語(yǔ)句中*b、?c表示的是ー個(gè)實(shí)型變量的地址,不能再將&b賦值給指針型變量gD選項(xiàng)語(yǔ)句中a=0.0后面應(yīng)該為逗號(hào),不能是分號(hào)。以下表示合法常量的是〇A)1,200B)1.5E2.0C)'\'D)"\007"A選項(xiàng)中整型常量應(yīng)表示為120〇,不能包含",”?B選項(xiàng)中E后面的指數(shù)必須為整數(shù)?C選項(xiàng)中轉(zhuǎn)義字符以"\"開(kāi)始,若要表示字符應(yīng)寫為"\\"o在E-R圖中,用來(lái)表示實(shí)體聯(lián)系的圖形是()〇ABC橢矩菱圓形形ABC橢矩菱圓形形D)三角形參考答案:C【解析】在E-R圖中實(shí)體集用矩形,屬性用橢圓,聯(lián)系用菱形。軟件測(cè)試的目的是()。A)評(píng)估軟件可靠性B)發(fā)現(xiàn)并改正程序中的錯(cuò)誤〇改正程序中的錯(cuò)誤D)發(fā)現(xiàn)程序中的錯(cuò)誤參考答案:D【解析】軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程,測(cè)試要以查找錯(cuò)誤為中心,而不是為了演示軟件的正確功能。不是為了評(píng)估軟件或改正錯(cuò)誤。面向?qū)ο蠓椒ㄖ?繼承是指()〇ー組對(duì)象所具有的相似性質(zhì)ー個(gè)對(duì)象具有另ー個(gè)對(duì)象的性質(zhì)〇各對(duì)象之間的共同性質(zhì)D)類之間共享屬性和操作的機(jī)制參考答案:D【解析】繼承是面向?qū)ο蟮姆椒ǖ囊粋€(gè)主要特征,是使用已有的類的定義作為基礎(chǔ)建立新類的定義技術(shù)。廣義的說(shuō),繼承是指能夠直接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們,所以說(shuō)繼承是指類之間共享屬性和操作的機(jī)制。層次型、網(wǎng)狀型和關(guān)系型數(shù)據(jù)庫(kù)劃分原則是()。A)記錄長(zhǎng)度B)文件的大小C)聯(lián)系的復(fù)雜程度D)數(shù)據(jù)之間的聯(lián)系方式參考答案:D【解析】層次模型的基本結(jié)構(gòu)是樹(shù)形結(jié)構(gòu),網(wǎng)狀模型是ー個(gè)不加任何條件限制的無(wú)向圖,關(guān)系模型采用二維表來(lái)表示,所以三種數(shù)據(jù)庫(kù)的劃分原則是數(shù)據(jù)之間的聯(lián)系方式。設(shè)變量均已正確定義,若要通過(guò)scanf("%d%c%d%c",&al,&cl,&a2,&c2);語(yǔ)句為變量al和a2賦數(shù)值10和20,為變量cl和c2賦字符X和Y。以下所示的輸入形式中正確的是(注:□代表空格字符)1OLIX<回車〉20口丫〈回車〉10DX20E]Y<回車>10X<回車〉20Y<回車〉10口X口20口丫〈回車〉參考答案:C【解析】輸入數(shù)據(jù)的格式必須與scanf()的格式控制串完全匹配,如果A、B、C選項(xiàng)中在數(shù)字10后面均輸入了空格,則會(huì)將空格賦給變量cl,而不是把X賦給cl,所以選擇C選項(xiàng)。有以下程序#include<stdio.h>main(){intk=5,n=0;do{switch(k){case1: case3:n+=l;k-;break;default:n=0;k-;case2: case4:n+=2;k—;break;)printf(”%d”,n);}while(k>0&&n<5);}程序運(yùn)行后的輸出結(jié)果是023560235〇235D)2356參考答案:C【解析】k的值為5,逐個(gè)對(duì)case語(yǔ)句進(jìn)行匹配,均不匹配執(zhí)行default下的語(yǔ)句n=0水ー-;在執(zhí)行case2:后面的空語(yǔ)句,與case4:后面的n+=2;k--;執(zhí)行break語(yǔ)句跳出switch判斷,打印n的值,即2。經(jīng)過(guò)第一次循環(huán)后,k的值為3,然后進(jìn)行k>0&&n<5條件判斷為真悌二次執(zhí)行循環(huán)體,執(zhí)行case3:后面的n+=l;k-再執(zhí)行break語(yǔ)句跳出循環(huán),此時(shí)打印n的值3,此時(shí)k的值為2。第三次執(zhí)行循環(huán)體k的值為2,滿足條件,執(zhí)行case2:case4:后面的語(yǔ)句n+=2,k--,跳出循環(huán)體。打印n的值5。此時(shí)n不小于5了條件k>0&&n<5不成立了,所以結(jié)束循環(huán)。整個(gè)程序的打印結(jié)果為235。有以下程序#include<stdio.h>voidf(int*q){inti=0;for(;i<5;i++)(*q)++;)main(){inta[5]={1,2,3,4,5},i;f(a);for(i=0;i<5;i++)prlntf(n%d/,/a[i]);)程序運(yùn)行后的輸出結(jié)果是6,2,3,4,5,2,2,3,4,5,1,2,3,4,5,2,3,4,5,6,參考答案:A【解析】本題考查的是函數(shù)的地址調(diào)用,將數(shù)組名作為數(shù)組首地址進(jìn)行傳遞,然后取數(shù)據(jù)元素值進(jìn)行加1運(yùn)算。因此A選項(xiàng)正確。以下選項(xiàng)中正確的語(yǔ)句組是A)char*s;s={"BOOK!"};char*s;s="BOOK!";chars[10];s="BOOK!";chars[];s="BOOK!";參考答案:B【解析】A選項(xiàng)去掉大括號(hào)就正確了;C選項(xiàng)和D選項(xiàng)應(yīng)在定義時(shí)賦初值。因此B選項(xiàng)正確。char*slゴ0K",*s2メ。k";是正確的。若有定義語(yǔ)句:char*sl="OK",*s2="ok";以下選項(xiàng)中,能夠輸出"。ぐ的語(yǔ)句是if(strcmp(sl,s2)!=0)puts(s2);if(strcmp(sl,s2)!=0)puts(sl);if(strcmp(sl,s2)==l)puts(sl);if(strcmp(sl,s2)==0)puts(sl);參考答案:B【解析】strcmp(sl,s2)是字符串比較函數(shù),比較規(guī)則是兩個(gè)字符串自左向右逐個(gè)字符相比(按照ASCII碼值大小),以第一個(gè)不相同的字符的大小作為比較結(jié)果。因?yàn)椤甇K'v'ok',所以strcmp(sl,s2)為負(fù)值,只有B選項(xiàng)正確。有以下程序#include<stdio.h>voidfun(char**p){++P;printf("%s\n",*p);)main()(char*a[]={"Morning","Afternoon","Evening","Night"};fun(a);}程序的運(yùn)行結(jié)果是AfternoonfternoonMorningorning參考答案:A【解析】本題主函數(shù)中定義了一個(gè)指針數(shù)組a,可以將它看成一個(gè)以字符指針為元素的ー維數(shù)組。和一般的ー維數(shù)組名能賦給同類型指針變量一樣,該字符指針數(shù)組也可以賦給指向字符指針的指針,所以數(shù)組名a可以用作函數(shù)fun()的實(shí)參。在fun()函數(shù)中,++p操作使形參p往后移動(dòng)ー個(gè)字符指針的位置,即指針a[l]的位置。故最后通過(guò)printf。函數(shù)輸出的字符串為"Afternoon"。因此A選項(xiàng)正確。若有以下語(yǔ)句typedefstructS{intg;charh;}T;以下敘述中正確的是A)可用S定義結(jié)構(gòu)體變量B)可用T定義結(jié)構(gòu)體變量S是struct類型的變量T是structS類型的變量參考答案:B【解析】本題考査typedef重新聲明一種結(jié)構(gòu)體類型,那么T為結(jié)構(gòu)體類型,而不是結(jié)構(gòu)體變量,所以B選項(xiàng)正確。有以下程序#include<stdio.h>main()(FILE*fp;intk,n,a[6]={l,2,3,4,5,6};fp=fopen("d2.dat","w");fprintf(fp,"%d%d%d\n",a[0],a[l],a[2]);fprintf(fp,"%d%d%d\n",a[3],a[4],a[5]);fclose(fp);fp=fopen("d2.dat","r");fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n);fclose(fp);程序運(yùn)行后的輸出結(jié)果是1214〇1234D)123456參考答案:D【解析】fprintf。函數(shù)向文件輸出,將輸出的內(nèi)容輸出到硬盤上的文件或是相當(dāng)于文件的設(shè)備上執(zhí)行兩次fprintf后文件中有123456I所以D選項(xiàng)正確。有以下結(jié)構(gòu)體說(shuō)明、變量定義和賦值語(yǔ)句structSTD{charname[10];intage;charsex;}s⑸,*ps;ps=&s[O];則以下scanf函數(shù)調(diào)用語(yǔ)句有錯(cuò)誤的是scanf("%s",s[0].name);scanfド%d",&s【0].age);C)scanf("%c”,&(ps->sex));D)scanf(,,%d"/ps->age);參考答案:D【解析】本題考査結(jié)構(gòu)體的相關(guān)知識(shí),題目中需要輸入一個(gè)變量,scanf要求參數(shù)為指針,而D選項(xiàng)中psoage為ー個(gè)變量,不是指針,所以錯(cuò)誤。有以下程序#include<stdio.h>voidfun(char*c,intd){*c=*c+l;d=d+l;printf(”%c,%c[*c,d);)main(){charb=,a'/a='A';fun(&b,a);printf(”%c,%c\n”,b,a);}程序運(yùn)行后的輸出結(jié)果是A)b,B,b,Aa,B,B,aa,B,a,B參考答案:A【解析】本題重點(diǎn)考察函數(shù)的調(diào)用,首先要了解字母對(duì)應(yīng)的ASCI!碼。例如A為65,a為97。即字母+1則可得到下ー個(gè)字母。其次是函數(shù)形參和實(shí)參的問(wèn)題,運(yùn)行過(guò)程如下:在fun(&b,a)中,*c=匕?,d=650?c+l='b',d+l=66,printf("%c,%c,",*c,d);輸出bB因?yàn)橹羔榗指向地址的值為b,此時(shí)b=*c=1げ;函數(shù)返回執(zhí)行printf("%c,%c\n",b,a);輸出b,A,因此A選項(xiàng)正確。有以下程序ftinclude<stdio.h>#defineSUB(a)(a)-(a)main(){inta=2,b=3,c=5,d;d=SUB(a+b)*c;printf("%d\n”,d);}程序運(yùn)行后的輸出結(jié)果是0-12〇?20D)10參考答案:C【解析】本題考查宏定義,宏定義只是做簡(jiǎn)單的替換,所以本題中SUB(a+b)*c=(a+b)-(a+b)*c=-20,所以答案為C選項(xiàng)。有以下程序#include<stdio.h>main(){FILE*fp;inta[10]={l,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++)printf("%d,",a[i]);)程序的運(yùn)行結(jié)果是A)l,2,3,0,0,0,0,0,0,0,B)l,2,3,l,2,3,0,0,0,0,〇123,0,0,0,0,123,0,0,0,0,D)1,2,3,0,0,1,23,0,0,參考答案:D【解析】本題考查文件操作函數(shù),兩次fwrite后,fp文件中已經(jīng)寫入1,23,0,0,1,23,0,0然后將文件fp中的內(nèi)容重新寫入數(shù)組a中,最后輸出a為1,2,3,0,0,1,23,0,0,所以選項(xiàng)D正確。以下敘述中錯(cuò)誤的是A)用戶定義的函數(shù)中可以沒(méi)有return語(yǔ)句B)用戶定義的函數(shù)中可以有多個(gè)return語(yǔ)句,以便可以調(diào)用一次返回多個(gè)函數(shù)值C)用戶定義的函數(shù)中若沒(méi)有return語(yǔ)句,則應(yīng)當(dāng)定義函數(shù)為void類型D)函數(shù)的return語(yǔ)句中可以沒(méi)有表達(dá)式參考答案:B【解析】本題重點(diǎn)考察函數(shù)返回值的相關(guān)知識(shí),函數(shù)的值只能通過(guò)return語(yǔ)句返回主調(diào)函數(shù),在函數(shù)中允許有多個(gè)return語(yǔ)句,但每次調(diào)用只能有一個(gè)return語(yǔ)句被執(zhí)行,因此只能返回一個(gè)函數(shù)值。不返回函數(shù)值的函數(shù),可以明確定義為"空類型",類型說(shuō)明符為"void"。因此B選項(xiàng)正確。若變量均已正確定義并賦值,以下合法的C語(yǔ)言賦值語(yǔ)句是x=y==5;x=n%2.5;x+n=i;x=5=4+l;參考答案:A【解析】B選項(xiàng)中運(yùn)算符"%"的前后必須為整數(shù),C選項(xiàng)中不能將變量賦給表達(dá)式x+n,D選項(xiàng)中不能將表達(dá)式4+1賦給常量5。數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式是概念模式、外模式和內(nèi)模式。程序調(diào)試的任務(wù)是診斷和改正程序中的錯(cuò)誤。下列關(guān)于數(shù)據(jù)庫(kù)設(shè)計(jì)的敘述中,正確的是()〇A)在需求分析階段建立數(shù)據(jù)字典B)在概念設(shè)計(jì)階段建立數(shù)據(jù)字典C)在邏輯設(shè)計(jì)階段建立數(shù)據(jù)字典D)在物理設(shè)計(jì)階段建立數(shù)據(jù)字典參考答案:A【解析】數(shù)據(jù)字典是在需求分析階段建立,在數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中不斷修改、充實(shí)和完善的。下列敘述中正確的是()〇A)循環(huán)隊(duì)列是隊(duì)列的ー種鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)B)循環(huán)隊(duì)列是隊(duì)列的ー種順序存儲(chǔ)結(jié)構(gòu)C)循環(huán)隊(duì)列是非線性結(jié)構(gòu)D)循環(huán)隊(duì)列是一種邏輯結(jié)構(gòu)參考答案:B【解析】在實(shí)際應(yīng)用中,隊(duì)列的順序存儲(chǔ)結(jié)構(gòu)?般采用循環(huán)隊(duì)列的形式。下列關(guān)于線性鏈表的敘述中,正確的是()〇A)各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)空間可以不連續(xù),但它們的存儲(chǔ)順序與邏輯順序必須一致B)各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)順序與邏輯順序可以不一致,但它們的存儲(chǔ)空間必須連續(xù)C)進(jìn)行插入與刪除時(shí),不需要移動(dòng)表中的元素D)以上說(shuō)法均不正確參考答案:C【解析】一般來(lái)說(shuō),在線性表的鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)中,各數(shù)據(jù)結(jié)點(diǎn)的存儲(chǔ)序號(hào)是不連續(xù)的,并且各結(jié)點(diǎn)在存儲(chǔ)空間中的位置關(guān)系與邏輯關(guān)系也不一致。線性鏈表中數(shù)據(jù)的插入和刪除都不需要移動(dòng)表中的元素,只需改變結(jié)點(diǎn)的指針域即可。在下列模式中,能夠給出數(shù)據(jù)庫(kù)物理存儲(chǔ)結(jié)構(gòu)與物理存取方法的是()〇A)外模式B)內(nèi)模式〇概念模式D)邏輯模式參考答案:B【解析】數(shù)據(jù)庫(kù)系統(tǒng)的三級(jí)模式是概念模式、外模式和內(nèi)模式。概念模式是數(shù)據(jù)庫(kù)系統(tǒng)中全局?jǐn)?shù)據(jù)邏輯結(jié)構(gòu)的描述,是全體用戶公共數(shù)據(jù)視圖。外模式也稱子模式或用戶模式,它是用戶的數(shù)據(jù)視圖,給出了每個(gè)用戶的局部數(shù)據(jù)描述。內(nèi)模式乂稱物理模式,它給出了數(shù)據(jù)庫(kù)物理存儲(chǔ)結(jié)構(gòu)與物理存取方法,所以選擇B)o在滿足實(shí)體完整性約束的條件下()〇一個(gè)關(guān)系中應(yīng)該有一個(gè)或多個(gè)候選關(guān)鍵字ー個(gè)關(guān)系中只能有一個(gè)候選關(guān)鍵字?個(gè)關(guān)系中必須有多關(guān)鍵字個(gè)候選ー個(gè)關(guān)系中可以沒(méi)有候選關(guān)鍵字參考答案:A【解析】實(shí)體完整性約束要求關(guān)系的主鍵中屬性值不能為空值,所以選擇A)。有三個(gè)關(guān)系R、S和T如下:則由關(guān)系R和S得到關(guān)系T的操作是()〇A)自然連接B)交C)除D)并參考答案:C【解析】如果S=T/R,則S稱為T除以R的商。在除運(yùn)算中S的域由T中那些不出現(xiàn)在R中的域所組成,對(duì)于S中的任一有序組,由它與關(guān)系R中每個(gè)有序組所構(gòu)成的有序組均出現(xiàn)在關(guān)系T中。所以本題選擇C)。下面不屬于需求分析階段任務(wù)的是()〇A)確定軟件系統(tǒng)的功能需求B)確定軟件系統(tǒng)的性能需求〇需求規(guī)格說(shuō)明書評(píng)審D)制定軟件集成測(cè)試計(jì)劃參考答案:D【解析】需求分析階段的工作有:需求獲取;需求分析;編寫需求規(guī)格說(shuō)明書;需求評(píng)審,所以選擇D)。在黑盒測(cè)試方法中,設(shè)計(jì)測(cè)試用例的主要根據(jù)是()〇A)程序內(nèi)部邏輯B)程序外部功能C)程序數(shù)據(jù)結(jié)構(gòu)D)程序流程圖參考答案:B【解析】黑盒測(cè)試是對(duì)軟件已經(jīng)實(shí)現(xiàn)的功能是否滿足需求進(jìn)行測(cè)試和驗(yàn)證,黑盒測(cè)試完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,只根據(jù)程序的需求和功能規(guī)格說(shuō)明,檢查程序的功能是否符合它的功能說(shuō)明,所以本題選擇B)。在軟件設(shè)計(jì)中不使用的工具是()。A)系統(tǒng)結(jié)構(gòu)圖B)PAD圖〇數(shù)據(jù)流圖(DFD圖)D)程序流程圖參考答案:C【解析】系統(tǒng)結(jié)構(gòu)圖是對(duì)軟件系統(tǒng)結(jié)構(gòu)的總體設(shè)計(jì)的圖形顯示。在需求分析階段,已經(jīng)從系統(tǒng)開(kāi)發(fā)的角度出發(fā),把系統(tǒng)按功能逐次分割成層次結(jié)構(gòu),是在概要設(shè)計(jì)階段用到的。PAD圖是在詳細(xì)設(shè)計(jì)階段用到的。程序流程圖是對(duì)程序流程的圖形表示,在詳細(xì)設(shè)計(jì)過(guò)程中用到。數(shù)據(jù)流圖是結(jié)構(gòu)化分析方法中使用的エ具,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過(guò)程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以它是ー種功能模型,是在可行性研究階段用到的而非軟件設(shè)計(jì)時(shí)用到,所以選擇C)。以下選項(xiàng)中關(guān)于程序模塊化的敘述錯(cuò)誤的是A)可采用自底向上、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序B)把程序分成若干相對(duì)獨(dú)立、功能單一的模塊,可便于重復(fù)使用這些模塊〇把程序分成若干相對(duì)獨(dú)立的模塊,可便于編碼和調(diào)試D)可采用自頂向下、逐步細(xì)化的設(shè)計(jì)方法把若干獨(dú)立模塊組裝成所要求的程序參考答案:A【解析】程序模塊化思想中,可以采用自頂向下、逐步細(xì)化的方法。所以選項(xiàng)A中〃自底向上”的說(shuō)法是錯(cuò)誤的。以下關(guān)于C語(yǔ)言數(shù)據(jù)類型使用的敘述中錯(cuò)誤的是A)若要處理如"人員信息"等含有不同類型的相關(guān)數(shù)據(jù),應(yīng)自定義結(jié)構(gòu)體類型B)若要保存帶有多位小數(shù)的數(shù)據(jù),可使用雙精度類型C)若只處理"真"和"假"兩種邏輯值,應(yīng)使用邏輯類型D)整數(shù)類型表示的自然數(shù)是準(zhǔn)確無(wú)誤差的參考答案:C【解析】C語(yǔ)言中沒(méi)有邏輯類型,所以C錯(cuò)誤。若要保存帶有多位小數(shù)的數(shù)據(jù),可以用單精度類型也可以用雙精度類型。處理包含不同類型的相關(guān)數(shù)據(jù)可以定義為結(jié)構(gòu)體類型。整數(shù)類型可以無(wú)誤差的表示自然數(shù)。有如下程序段:intx=12;doubley=3.141593;printf("%d%8.6f",x,y);其輸出結(jié)果是A)123.141593123.14159312,3.141593D)123.1415930參考答案:A【解析】printf函數(shù)中格式字符"%8.6"的含義是:變量y的輸出寬度為8(包括小數(shù)點(diǎn)),小數(shù)點(diǎn)后面保留6位小數(shù),且右對(duì)齊。所以選擇A,若函數(shù)調(diào)用時(shí)的實(shí)參為變量時(shí),以下關(guān)于函數(shù)形參和實(shí)參的敘述中正確的是A)函數(shù)的形參和實(shí)參分別占用不同的存儲(chǔ)單元B)形參只是形式上的存在,不占用具體存儲(chǔ)單元〇同名的實(shí)參和形參占同一存儲(chǔ)單元D)函數(shù)的實(shí)參和其對(duì)應(yīng)的形參共占同一存儲(chǔ)單元參考答案:A【解析】本題重點(diǎn)考察的是函數(shù)的形參和實(shí)參。在定義函數(shù)時(shí)函數(shù)名后面括弧中的變量名稱為"形式參數(shù)"(簡(jiǎn)稱形參),在主調(diào)函數(shù)中調(diào)用ー個(gè)函數(shù)時(shí),函數(shù)名后面括弧中的參數(shù)(可以是一個(gè)表達(dá)式)稱為"實(shí)際參數(shù)"(簡(jiǎn)稱實(shí)參)。C語(yǔ)言規(guī)定,實(shí)參變量對(duì)形參變量的數(shù)據(jù)傳遞是"值傳遞",即單向傳遞,只由實(shí)參傳給形參,而不能由形參傳回來(lái)給實(shí)參。在內(nèi)存中,實(shí)參單元與形參單元是不同的單元。因此A選項(xiàng)正確。設(shè)有以下函數(shù):voidfun(intnzchar*s){……}則下面對(duì)函數(shù)指針的定義和賦值均正確的是void(*pf)(int,char);pf=&fun;void*pf(); pf=fun;void*pf(); *pf=fun;void(*pf)(int?char*);pf=fun;參考答案:D【解析】函數(shù)的參數(shù)可以是指針類型。它的作用是將一個(gè)變量的地址傳送到另…個(gè)函數(shù)中。函數(shù)名代表函數(shù)的入口地址,指向函數(shù)的指針應(yīng)該定義為void(*pf)〇。如果定義為void*pf(),則表示函數(shù)pf返回值為ー—個(gè)基類型為void的指針。因此D選項(xiàng)正確。若要求定義具有10個(gè)int型元素的ー維數(shù)組a,則以下定義語(yǔ)句中錯(cuò)誤的是#definen5inta[2*n];intn=10,a[n];inta[5+5];#defineN10inta[N];參考答案:B【解析】一維數(shù)組的定義方式為:類型說(shuō)明符數(shù)組名[常量表達(dá)式];注意定義數(shù)組時(shí),元素個(gè)數(shù)不能是變量。因此應(yīng)該選B選項(xiàng)。以下選項(xiàng)中正確的語(yǔ)句組是char*s;s={"BOOK!"!;char*s;s="BOOK!";chars[10];s="BOOK!";D)chars[];s="BOOK!";參考答案:B【解析】A選項(xiàng)去掉大括號(hào)就正確了;C選項(xiàng)和D選項(xiàng)應(yīng)在定義時(shí)賦初值。因此B選項(xiàng)正確。#include<stdio.h>charsl[10]="abed!",*s2="\nl23\\";printf("%d%d\n",strlen(sl),strlen(s2));5,5【解析】strlen函數(shù)返回字符串的長(zhǎng)度,求字符串長(zhǎng)度時(shí),遇到結(jié)束標(biāo)志,、。為止,但是長(zhǎng)度不包括結(jié)束標(biāo)識(shí)。字符數(shù)組si的后5個(gè)元素沒(méi)有賦值,都為ヘ。,,即"abed!"后為ヘ0,。所以strlen(sl)的值為5。字符指針s2所指向的字符串中,\n為轉(zhuǎn)義字符換行符,表示1個(gè)字符,\'也為轉(zhuǎn)義字符,代表、,也是1個(gè)字符,其后為字符串結(jié)束標(biāo)識(shí)‘'0';所以strlen(s2)的值也為5=因此C選項(xiàng)正確。有以下程序段structst{intx;int*y;}*pt;inta[]={l,2},b[]={3,4};structstc[2]={10,a,20,b};pt=c;以下選項(xiàng)中表達(dá)式的值為11的是++pt->Xpt->X*pt->yD)(pt++)->x參考答案:A【解析】本題考查結(jié)構(gòu)體數(shù)組初始化以及結(jié)構(gòu)體變量的引用,題目中定義了一個(gè)結(jié)構(gòu)體數(shù)組c并初始化,指針pt指向c的第,一個(gè)元素,那么pt->x為10,++pt->x為!1,*pt->y為1,(pt++)->x為20,所以答案為Ao有以下程序^include<stdio.h>#include<string.h>typedefstruct{charname[9];charsex;floatscore[2];}STU;voidf(STUA)(STUb={"Zhao"z'm',85。90.0};inti;strcpy(,);a.sex=b.sex;for(i=0;i<2;i++)a.score[i]=b.score[i];)main()(STU c={“Qian”,匕95.0,92.0};f(c);printf(n%s,%c,%2.0f,%2.0f\n",,c.sex,c.score[0],c.score[l]);}程序的運(yùn)行結(jié)果是Zhao,m,85,90Qian,m,85,90Zhao,f,95,92Qian,f,95,92參考答案:D【解析】本題考查結(jié)構(gòu)體的相關(guān)操作以及傳值、傳址的區(qū)別,該題中調(diào)用f函數(shù)后,會(huì)生成參數(shù)c的一個(gè)副本,而不會(huì)改變c的值,所以c值維持原值,選項(xiàng)D正確。軟件按功能可以分為應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應(yīng)用軟件的是()〇A)學(xué)生成績(jī)管理系統(tǒng)B)C語(yǔ)言編譯程序〇UNIX操作系統(tǒng)D)數(shù)據(jù)庫(kù)管理系統(tǒng)參考答案:A【解析】軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件、支撐軟件。操作系統(tǒng)、編譯程序、匯編程序、網(wǎng)絡(luò)軟件、數(shù)據(jù)庫(kù)管理系統(tǒng)都屬于系統(tǒng)軟件。所以B)、C)、D)都是系統(tǒng)軟件,只有A)是應(yīng)用軟件。轉(zhuǎn)義字符中,ハ進(jìn)制的表示形式為\ddd,但是八進(jìn)制中不能包含數(shù)字8,所以'018,不合法。若有定義語(yǔ)句:inta=3zb=2zc=l;以下選項(xiàng)中錯(cuò)誤的賦值表達(dá)式是a=(b=4)=3;a=b=c+l;a=(b=4)+c;a=l+(b=c=4);參考答案:A【解析】不能將變量或常量賦給ー個(gè)表達(dá)式,所以A選項(xiàng)中(b=4)=3是錯(cuò)誤的。若有定義語(yǔ)句:inta[2][3],*p[3];則以下語(yǔ)句中正確的是p=a;p[O]=a;p[0]=&a[l][2];p[l]=&a;參考答案:C【解析】A選項(xiàng)錯(cuò)誤,因?yàn)閜是指向一個(gè)指針數(shù)組,作為數(shù)組名,不能指向別的地方。B選項(xiàng)錯(cuò)誤,因?yàn)閜[0]是ー?個(gè)int指針,也就是int*;而a是??個(gè)指向指針的指針im**。C選項(xiàng)正確,因?yàn)閜[0]是ー個(gè)int*,a口][2]是int,的[1][2]是int*,類型吻合。D選項(xiàng)錯(cuò)誤,因?yàn)閍作為數(shù)組名,不能取地址。即使能取,p[l]是int*,&a是im***,類型不對(duì)。因此C選項(xiàng)正確。以下能正確定義字符串的語(yǔ)句是charstr="\x43";charstr[]="\O";charstr=";charstr[]={'\064'};參考答案:B【解析】C語(yǔ)言中,字符串是用ー對(duì)雙引號(hào)括起來(lái)的字符序列,并用字符型數(shù)組來(lái)存放,故C選項(xiàng)和D選項(xiàng)不屬于字符串,A選項(xiàng)定義的是ー個(gè)字符變量str,卻用來(lái)存放字符串,顯然也不正確,因此B選項(xiàng)正確。以下關(guān)于C語(yǔ)言的敘述中正確的是C語(yǔ)言的數(shù)值常量中夾帶空格不影響常量值的正確表示C語(yǔ)言中的變量可以在使用之前的任何位置進(jìn)行定義C)在C語(yǔ)言算術(shù)表達(dá)式的書寫中,運(yùn)算符兩側(cè)的運(yùn)算數(shù)類型必須-致D)C語(yǔ)言中的注釋不可以?shī)A在變量名或關(guān)鍵字的中間參考答案:D【解析】C語(yǔ)言的數(shù)值常量中不能夾帶空格,所以A錯(cuò)誤。C語(yǔ)言中的變量都必須先定義再使用,對(duì)變量的定義通常放在函數(shù)體內(nèi)的前部,但也可以放在函數(shù)外部或復(fù)合語(yǔ)句的開(kāi)頭,不能隨便放置,所以B錯(cuò)誤。在C語(yǔ)言中運(yùn)算符兩側(cè)的運(yùn)算數(shù)據(jù)類型可以不??致,且結(jié)果與精度較高的保持一致,所以C錯(cuò)誤。表達(dá)式a+=a-=a=9的值是18-909參考答案:C【解析】首先計(jì)算a=9,然后計(jì)算a-=9,即a=a-9,結(jié)果為。,然后計(jì)算a+=0,即a=a+O,所以最終結(jié)果為0“有以下程序#include<stdio.h>intfunl(doublea)return(int)(a*=a);)intfun2(doublexzdoubley)doublea=0zb=0;a=funl(x);b=funl(y);return(int)(a+b);}main()doublew;w=fun2(l.lz2.0);printf(H%4.2f"zw);}程序執(zhí)行后輸出結(jié)果是0.05〇5.21D)5.00參考答案:D【解析】題中變量w的定義為double型,函數(shù)fun2()的定義為int型,按照各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算,整型數(shù)據(jù)被轉(zhuǎn)換為實(shí)型數(shù)據(jù)。因此D選項(xiàng)正確。有以下程序#include<stdio.h>voidfun(int*a,int*b){int*c;c=a;a=b;b=c;}main(){intx=3,y=5,*p=&x,*q=&y;fun(p,q);printf("%d,%d,",*p,*q);fun(&x,&y);printf("%d,%d\n",*p,*q);}程序運(yùn)行后的輸出結(jié)果是A)353,53,5,5,35,3,3,55,3,5,3參考答案:A【解析】fun函數(shù)的功能是交換形式參數(shù)的值,即交換指針變量a和b的值,但是fun函數(shù)并不能夠交換實(shí)參的值,因此fun(p,q)不能交換p和q的值,所以第一個(gè)printf語(yǔ)句的輸出為3,5。第二個(gè)fun函數(shù)對(duì)x和y的地址進(jìn)行了操作,同樣不能交換x和y的值,并不能影響p和q指針指向的數(shù)據(jù),因此第二個(gè)printf語(yǔ)句的輸出也是3,5。因此A選項(xiàng)正確。若要求從鍵盤讀入含有空格字符的字符串,應(yīng)使用函數(shù)getchar()getc()gets()scanf()參考答案:C【解析】scanf()語(yǔ)句中用"空格"間隔不同的字符串,空格將被全部忽略掉,所以用scanf()函數(shù)不能輸入空格;getchar()函數(shù)用于輸入字符,其調(diào)用格式為:ch=getchar(),getchar。函數(shù)從終端讀入一個(gè)字符作為函數(shù)值,把讀入的字符賦給變量ch。在輸入時(shí),空格、回車符都將作為字符讀入,而且只有在用戶敲入回車鍵時(shí),讀入オ開(kāi)始執(zhí)行。gets。函數(shù)的調(diào)用形式為:gets(str_adr),其中str_adr是存放輸入字符串的起始地址,可以是字符數(shù)組名、字符數(shù)組元素的地址或至符指針變量。gets函數(shù)用來(lái)從終端鍵盤讀入字符串(包括空格符),直到讀入ー個(gè)換行符為止。getc()函數(shù)的調(diào)用形式為:ch=getc(pf)其中pf是文件指針,函數(shù)的功能是從pf指定的文件中讀入一個(gè)字符,并把它作為函數(shù)值返回。因此C選項(xiàng)正確。以下敘述中錯(cuò)誤的是A)C程序?qū)︻A(yù)處理命令行的處理是在程序執(zhí)行的過(guò)程中進(jìn)行的B)預(yù)處理命令行的最后不能以分號(hào)表示結(jié)束C)#defineMAX是合法的宏定義命令行D)在程序中凡是以"#"開(kāi)始的語(yǔ)句行都是預(yù)處理命令行參考答案:A【解析】本題考査預(yù)處理命令行,預(yù)處理是在程序編譯之前進(jìn)行的,所以A選項(xiàng)錯(cuò)誤。在關(guān)系數(shù)據(jù)庫(kù)中,用來(lái)表示實(shí)體間聯(lián)系的是A)屬性B)二維表C)網(wǎng)狀結(jié)構(gòu)D)樹(shù)狀結(jié)構(gòu)參考答案:B【解析】關(guān)系模型實(shí)體間的聯(lián)系采用二維表來(lái)表示,簡(jiǎn)稱表。選項(xiàng)C為網(wǎng)狀模型實(shí)體間的聯(lián)系,選項(xiàng)D為層次模型實(shí)體間的聯(lián)系,選項(xiàng)A屬性刻畫了實(shí)體有兩個(gè)關(guān)系R和S如下:A)選擇B)投影)自然連接D)并參考答案:A【解析】由關(guān)系R到關(guān)系S為一元運(yùn)算,排除C和D。關(guān)系S是關(guān)系R的一部分,是通過(guò)選擇之后的結(jié)果,因此選A。軟件需求規(guī)格說(shuō)明書的作用不包括A)軟件驗(yàn)收的依據(jù)B)用戶與開(kāi)發(fā)人員對(duì)軟件要做什么的共同理解C)軟件設(shè)計(jì)的依據(jù)D)軟件可行性研究的依據(jù)參考答案:D【解析】軟件需求規(guī)格說(shuō)明書是需求分析階段的最后成果,是軟件開(kāi)發(fā)的重要文檔之一。軟件需求規(guī)格說(shuō)明書有以下幾個(gè)方面的作用。①便于用戶、開(kāi)發(fā)人員進(jìn)行理解和交流,B正確;②反映出用戶問(wèn)題的結(jié)構(gòu),可以作為軟件開(kāi)發(fā)工作的基礎(chǔ)和依據(jù),C正確;③作為確認(rèn)測(cè)試和驗(yàn)收的依據(jù),A正確。下面屬于黑盒測(cè)試方法的是A)語(yǔ)句覆蓋B)邏輯覆蓋C)邊界值分析D)路徑覆蓋參考答案:C【解析】黑盒測(cè)試不關(guān)心程序內(nèi)部的邏輯,只是根據(jù)程序的功能說(shuō)明來(lái)設(shè)計(jì)測(cè)試用例。在使用黑盒測(cè)試法時(shí),手頭只需要有程序功能說(shuō)明就可以了。黑盒測(cè)試法分等價(jià)類劃分法、邊界值分析法和錯(cuò)誤推測(cè)法,答案為C。而A、B、D均為白盒測(cè)試方法。下面不屬于軟件設(shè)計(jì)階段任務(wù)的是A)軟件總體設(shè)計(jì)B)算法設(shè)計(jì)C)制定軟件確認(rèn)測(cè)試計(jì)劃D)數(shù)據(jù)庫(kù)設(shè)計(jì)參考答案:C【解析】從技術(shù)觀點(diǎn)上看,軟件設(shè)計(jì)包括軟件結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)、接口設(shè)計(jì)、過(guò)程設(shè)計(jì)。所以A、B、D正確,C為軟件測(cè)試階段的任務(wù)。下列敘述中錯(cuò)誤的是C程序可以由多個(gè)程序文件組成ー個(gè)C語(yǔ)言程序只能實(shí)現(xiàn)ー種算法C程序可以由一個(gè)或多個(gè)函數(shù)組成ー個(gè)C函數(shù)可以單獨(dú)作為ー個(gè)C程序文件存在參考答案:B【解析】一個(gè)C語(yǔ)言程序可以實(shí)現(xiàn)多種算法,可以由多個(gè)程序文件共同構(gòu)成。ー個(gè)C語(yǔ)言程序可以由一個(gè)或多個(gè)函數(shù)組成,一個(gè)C函數(shù)可以單獨(dú)作為一個(gè)C程序文件存在,被包含到其他程序中。所以選擇B選項(xiàng)。下面屬r白盒測(cè)試方法的是A)等價(jià)類劃分法B)邏輯覆蓋C)邊界值分析法D)錯(cuò)誤推測(cè)法參考答案:B【解析】白盒測(cè)試法主要有邏輯覆蓋、基本路徑測(cè)試等。邏輯覆蓋測(cè)試包括語(yǔ)句覆蓋、路徑覆蓋、判定覆蓋、條件覆蓋、判斷一條件覆蓋,選擇B。其余為黑盒測(cè)試法。卜面對(duì)對(duì)象概念描述正確的是A)對(duì)象間的通信靠消息傳遞B)對(duì)象是名字和方法的封裝體〇任何對(duì)象必須有繼承性D)對(duì)象的多態(tài)性是指?個(gè)對(duì)象有多個(gè)操作參考答案:A【解析】對(duì)象之間進(jìn)行通信的構(gòu)造叫做消息,A正確。多態(tài)性是指同一個(gè)操作可以是不同對(duì)象的行為,D錯(cuò)誤。對(duì)象不一定必須有繼承性,C錯(cuò)誤。封裝性是指從外面看只能看到對(duì)象的外部特征,而不知道也無(wú)須知道數(shù)據(jù)的具體結(jié)構(gòu)以及實(shí)現(xiàn)操作,B錯(cuò)誤。下列敘述中正確的是A)C程序中所有函數(shù)之間都可以相互調(diào)用B)在C程序中main函數(shù)的位置是固定的〇在C程序的函數(shù)中不能定義另ー個(gè)函數(shù)D)每個(gè)C程序文件中都必須要有一個(gè)main函數(shù)參考答案:C【解析】C程序中主函數(shù)不能被其他函數(shù)調(diào)用,所以A選項(xiàng)錯(cuò)誤。main函數(shù)可以放在程序開(kāi)始,也可以放在中間,也可以放在最后,位置不固定,但程序執(zhí)行時(shí)必須從main函數(shù)開(kāi)始,所以B選項(xiàng)錯(cuò)誤。在C程序的函數(shù)中不能定義另ー個(gè)函數(shù),可以聲明或調(diào)用另ー個(gè)函數(shù),所以C選項(xiàng)正確。每個(gè)C程序中必須包含ー個(gè)main函數(shù),但不?定是每個(gè)C程序文件中必須有,用戶單獨(dú)編寫的某個(gè)函數(shù)也可以存儲(chǔ)為ー個(gè)C程序文件,所以D選項(xiàng)錯(cuò)誤。若各選項(xiàng)中所用變量已正確定義,函數(shù)fun中通過(guò)return語(yǔ)句返回一個(gè)函數(shù)值,以下選項(xiàng)中錯(cuò)誤的程序是main(){ x=fun(2,10); }floatfun(intajntB){…}floatfun(inta,intB){……}main(){ x=fun(ij);??????}floatfun(intJnt);main()TOC\o"1-5"\h\z{ x=fun(2z10); }floatfun(intaJntB){ }main(){floatfun(intijntj); x=fun(ij); }floatfun(intaJntB){……}參考答案:A【解析】在調(diào)用子函數(shù)時(shí),應(yīng)對(duì)其進(jìn)行說(shuō)明。A選項(xiàng)中,調(diào)用時(shí),沒(méi)有對(duì)子函數(shù)進(jìn)行說(shuō)明。B選項(xiàng)、C選項(xiàng)中被調(diào)用函數(shù)在主調(diào)函數(shù)之前定義,不用說(shuō)明:D選項(xiàng)中在主函數(shù)中對(duì)被調(diào)用函數(shù)的返回值類型進(jìn)行了說(shuō)明。因此A選項(xiàng)正確。若有定義語(yǔ)句:intyear=2009,*p=&year;以下不能使變量year中的值增至2010的語(yǔ)句是(*p)++;*p++;++(*P);*p+=l;參考答案:B【解析】由于自加運(yùn)算符++的運(yùn)算級(jí)別高于間接運(yùn)算?的運(yùn)算級(jí)別,所以B選項(xiàng)的表達(dá)式?p++不能使變量year中的值增至201〇。因此B選項(xiàng)正確。以下正確的字符串常量是A)"\\\"B)'abc'C)OlympicGamesD)""參考答案:D【解析】本題考察的知識(shí)點(diǎn)是:字符串常量。在C語(yǔ)言中,字符串常量是以雙引號(hào)括起來(lái)的字符序列。因此B選項(xiàng)和C選項(xiàng)不正確。字符序列中可包含一些轉(zhuǎn)義字符,轉(zhuǎn)義字符都是以"ヾ開(kāi)頭的。A選項(xiàng)中包含了三個(gè)"ヾ,前兩個(gè)(\\)代表了一個(gè)"ヾ字符,后面一個(gè)和"""一起(ヽ")被看作一個(gè)""",所以該字符串缺少ー個(gè)結(jié)束的""",因此不正確。D選項(xiàng)的兩個(gè)"""之間沒(méi)有任何字符,代表的是ー個(gè)空串,是合法的字符串常量,因此D選項(xiàng)正確。下列選項(xiàng)中,能夠滿足"只要字符串sl等于字符串S2,則執(zhí)行ST"要求的是A)if(sl-s2==0)ST;B)if(sl==s2)ST;if(strcpy(sl,s2)==l)ST;if(strcmp(s2,sl)==0)ST;參考答案:D【解析】在C語(yǔ)言中要對(duì)兩個(gè)字符串的大小進(jìn)行比較,就需要調(diào)用字符串比較函數(shù)strcmp,如果這個(gè)函數(shù)的返回值等于〇,說(shuō)明兩個(gè)字符串相等。因此D選項(xiàng)正確。下列與隊(duì)列結(jié)構(gòu)有關(guān)聯(lián)的是A)函數(shù)的遞歸調(diào)用B)數(shù)組元素的引用〇多重循環(huán)的執(zhí)行D)先到先服務(wù)的作業(yè)調(diào)度參考答案:D【解析】隊(duì)列的修改是依先進(jìn)先出的原則進(jìn)行的,D正確。下面不屬丁?軟件測(cè)試實(shí)施步驟的是A)集成測(cè)試B)回歸測(cè)試〇確認(rèn)測(cè)試D)單元測(cè)試參考答案:B【解析】軟件測(cè)試主要包括單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試和系統(tǒng)測(cè)試。下面不屬于軟件需求分析階段主:要工作的是A)需求變更申請(qǐng)B)需求分析C)需求評(píng)審D)需求獲取參考答案:A【解析】需求分析階段的工作可概括為4個(gè)方面:①需求獲取。②需求分析。③編寫需求規(guī)格說(shuō)明書。④需求審評(píng)。一般情況下,當(dāng)對(duì)關(guān)系R和S進(jìn)行自然連接時(shí),要求R和S含有一個(gè)或者多個(gè)共有的A)記錄B)行〇屬性D)元組參考答案:C【解析】自然連接是ー種特殊的等值連接,它滿足
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 科技產(chǎn)品與網(wǎng)絡(luò)安全兼容性分析
- 2025年菏澤職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)匯編
- 2025年廣東省云浮市單招職業(yè)適應(yīng)性測(cè)試題庫(kù)完整
- 科技教育中的網(wǎng)絡(luò)安全普及
- 2025年廣東食品藥品職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)參考答案
- 科技與醫(yī)學(xué)結(jié)合下的中藥治療糖尿病新進(jìn)展
- 臨床醫(yī)學(xué)康復(fù)學(xué)復(fù)習(xí)測(cè)試卷
- 2025年贛南衛(wèi)生健康職業(yè)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)附答案
- 林業(yè)規(guī)劃設(shè)計(jì)合同范本
- 2025年吉林鐵道職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)必考題
- 婚內(nèi)財(cái)產(chǎn)債務(wù)協(xié)議書(通用)
- 部編版四年級(jí)下冊(cè)道德與法治 第4課 買東西的學(xué)問(wèn)(第2課時(shí)) 教學(xué)課件
- 慢性活動(dòng)性EB病毒課件
- 葡萄胎全面版課件
- 《冷沖壓工藝與模具設(shè)計(jì)》完整版ppt課件全套教程
- 業(yè)務(wù)招待費(fèi)明細(xì)單
- 高效液相色譜法分析(三聚氰胺)原始記錄1
- 典雅中國(guó)風(fēng)詩(shī)詞大會(huì)古風(fēng)PPT模板
- Part 7 Formal and Informal Styles課件
- 文化差異及跨文化交際試題集
- 油畫人體張東方姑娘的極致美
評(píng)論
0/150
提交評(píng)論