版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
二級(jí)C語言筆試試題匯編二級(jí)C語言筆試試題匯編筆試(針對(duì)2008年4月)一、選擇題((1)~(40)每題1分,(41)?(50)每題2分,共60分)下列各題A)、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的。01)與十進(jìn)制數(shù)200等值的十六進(jìn)制數(shù)為A)A8B)A4C)C8D)C4答案:C02)DOS文件系統(tǒng)的組織結(jié)構(gòu)屬于A)星形結(jié)構(gòu)B)網(wǎng)形結(jié)構(gòu)C)環(huán)形結(jié)構(gòu)D)樹形結(jié)構(gòu)答案:D03)對(duì)存儲(chǔ)器按字節(jié)進(jìn)行編址,若某存儲(chǔ)器芯片共有10根地址線,則該存儲(chǔ)器芯片的存儲(chǔ)容量為A)1KBB)2KBC)4KBD)8KB答案:A04)在DOS環(huán)境下,代表鍵盤和顯示器的設(shè)備文件名為A)PRNB)CONC)NULD)LPT答案:B05)計(jì)算機(jī)網(wǎng)絡(luò)的主要特點(diǎn)是A)運(yùn)算速度快B)運(yùn)算精度高C)資源共享D)人機(jī)交互答案:C06)磁盤處于寫保護(hù)狀態(tài)時(shí)其中的數(shù)據(jù)A)不能讀出,不能刪改B)可以讀出,不能刪改C)不能讀出,可以刪改D)可以讀出,可以刪改答案:B07)從Windows環(huán)境進(jìn)入MS-DOS方式后,返回Windows環(huán)境的DOS命令為A)EXITB)QUITC)RETD)MSDOS答案:A08)在Windows環(huán)境下,若資源管理器左窗口中的某文件夾左邊標(biāo)有“+”標(biāo)記,則表示A)該文件夾為空B)該文件夾中含有子文件夾C)該文件夾中只包含有可執(zhí)行文件D)該文件夾中包含系統(tǒng)文件答案:B09)在Windows菜單中,暗淡的命令名項(xiàng)目表示該命令A(yù))暫時(shí)不能用B)正在執(zhí)行C)包含下一層菜單D)包含對(duì)話框答案:A10)A)將當(dāng)前應(yīng)用程序轉(zhuǎn)為后臺(tái)運(yùn)行B)退出Windows后再關(guān)機(jī)C)終止當(dāng)前應(yīng)用程序的運(yùn)行D)退出Windows后重新啟動(dòng)計(jì)算機(jī)答案:C11)用C語言編寫的代碼程序A)可立即執(zhí)行B)是一個(gè)源程序C)經(jīng)過編譯即可執(zhí)行D)經(jīng)過編譯解釋才能執(zhí)行答案:B12)結(jié)構(gòu)化程序由三種基本結(jié)構(gòu)組成,三種基本結(jié)構(gòu)組成的算法A)可以完成任何復(fù)雜的任務(wù)B)只能完成部分復(fù)雜的任務(wù)C)只能完成符合結(jié)構(gòu)化的任務(wù)D)只能完成一些簡(jiǎn)單的任務(wù)答案:A13)以下定義語句中正確的是A)chara='A'b='B';B)floata=b=10.0;C)inta=10,*b=&a;D)float*a,b=&a;答案:C14)下列選項(xiàng)中,不能用作標(biāo)識(shí)符的是A)1234B)j_2一C)int_2_D)2_int_答鑾D15)有以下定義語句doublea,b;intw;longc;若各變量已正確賦值,則下列選項(xiàng)中正確的表達(dá)式是A)a=a+b=b++B)w%((int)a+b)C)(c+w)%(int)aD)w=a=b;答案?C16)有眾下程序main(){intm=3,n=4,x;x=?m++;x=x+8/-H-n;printf{"%d\n”,x);)程序運(yùn)行后的輸出結(jié)果是A)3B)5C)-lD)-2答案:D17)有以下程序main(){chara=*a',b;printff%cj,++a);printfi(,,%c\n,,,b=a++);}程序運(yùn)行后的輸出結(jié)果是A)b,bB)b,cC)a,bD)a,c答案?A18)有以下程序main(){intm=0256,n=256;printf(H%o%o\n,,,m,n);}程序運(yùn)行后的輸出結(jié)果是A)02560400B)0256256C)256400D)400400答案:C19)有以下程序main(){inta=666,b=888;printff%d\n”,a,b);)程序運(yùn)行后的輸出結(jié)果是A)錯(cuò)誤信息B)666C)888D)666,888答案:B20)有以下程序main(){inti;fbr(i=0;i<3;i-H-)switch(i)(case0:printf("%d",i);case2:printfl;"%d",i);defaultrprintfC^^i);程序運(yùn)行后的輸出結(jié)果是A)022111B)021021C)000122D)012答案:C21)若x和y代表整型數(shù),以下表達(dá)式中不能正確表示數(shù)學(xué)關(guān)系|x-y|<10的是A)abs(x-y)<10B)x-y>-10&&x-y<10C)!(x-y)<-10||!(y-x)>10D)(x-y)*(x-y)<100答案:C22)有以下程序main(){inta=3,b=4,c=5,d=2;if(a>b)if(b>c)printfC%d”,d+++1);elseprintfT'%d”,++d+1);printfC%d\n”,d);}程序運(yùn)行后的輸出結(jié)果是A)2B)3C)43D)44答案:A23;下列條件語句中,功能與其他語句不同的是A)if(a)prin氓"%d\n”,x);elsepHntfC%d\n”,y);B)if(a=O)printf("%d\n",y);elseprintf(H%d\nn,x);C)if(a!=O)printf(,,%d\n,\x);elseprintff%d\n”,y);D)if(a=O)printf(n%d\n",x);elseprintff%d\n”,y);答案:D24)有以下程序main(){inti=O,s=O;M;;){if(i=3||i=5)continue;if(i==6)break;i++;s+=i;)printfitH%d\nM,s);)程序運(yùn)行后的輸出結(jié)果是A)1OB)13C)21D)程序進(jìn)入死循環(huán)答案:D25)若變量己正確定義,要求程序段完成求5!的計(jì)算,不能完成此操作的程序段是A)fbr(i=l,p=1;i<=5;i-H-)p*=i;B)fbr(i=1;i<=5;i-H-){p=1;p*=i;}C)i=l;p=l;while(i<=5){p*=i;i++;}D)i=1;p=l;do{p*=i;i++;}while(i<=5);答案:B26)有以下程序main(){chara,b,c,d;scanf{M%c,%c,%d,%dM,&a,&b,&c,&d);printf{M%c,%c,%c,%c\nM,a,b,c,d);}若運(yùn)行時(shí)從鍵盤上輸入:6,5,65,66v回車〉o則輸出結(jié)果是A)6,5,A,BB)6,5,65,66C)6,5,6,5D)6,5,6,6答案:A27)以下能正確定義二維數(shù)組的是A)inta[][3];B)inta[][3]={2*3};C)inta[][3]={};D)inta[2][3]={{l},{2},{3,4}};答案:B28)有以下程序intf(inta){returna%2;}main(){ints[8]={l,3,5,2,4,6},i,d=0;fbr(i=0;f{s[i]);i4-4-)d+=s[i];printfT%d\n”,d);}程序運(yùn)行后的輸出結(jié)果是A)9B)llC)19D)21答案:A29)若有以下說明和語句intc[4][5],(*p)[5];p=c;能夠正確引用c數(shù)組元素的是A)p+1B)*(p+3)C)*(p+l)+3D)*(p[0]+2)答案:D30)有以下程序main(){inta=7,b=8,*p,*q,*r;p=&a;q=&b;r=p;p=q;q=r;printf{*,%d,%d,%d,%d\nM,*p,*q,a,b);}程序運(yùn)行后的輸出結(jié)果是A)8,7,8,7B)7,8,7,8C)8,7,7,8D)7,8,8,7答案:C31)si和s2己正確定義并分別指向兩個(gè)字符串。若要求:當(dāng)si所指串大于s2所指串時(shí),執(zhí)行語句S:則以下選項(xiàng)中正確的是A)if(sl>s2)S;B)if(strcmp(sl,s2))S;C)if(strcmp(s2,sl)>0)S;D)if(strcmp(s1,s2)>0)S;答案:D32)設(shè)有定義語句intx[6]={2,4,6,8,5,7},*p=x,i;要求依次輸出x數(shù)組6個(gè)元素中的值,不能完成此操作的語句是A)fbr(i=0;i<6;i++)printfT'%2d”,*(pH));B)fbr(i=0;i<6;i-H-)printfC%2d”,*(p+i));C)fbr(i=0;i<6;i++)printfC%2d\*p++);D)for(i=0;i<6;i-H-)printf(M%2d,,,(*p)-H-);答案:D33)有以下程序#include<stdio.h>main(){inta[]={1,2,3,4,5,6,7,8,9,10,11,12,},*p=a+5,*q=NULL;*q=*(p+5);printf("%d%d\n",*p,*q);}程序運(yùn)行后的輸出結(jié)果是A)運(yùn)行后報(bào)錯(cuò)B)66C)611D)510答案:A34)設(shè)有以下定義和語句inta[3][2]={l,2,3,4,5,6),*p[3];p[0]=a[l];則*(p[0]+l)所代表的數(shù)組元素是A)a[0][l]B)a[l][0]C)a[l][l]D)a[l][2]答案:C35)有以下程序main(){charstr[][10]={MChinan,HBeijing"},*p=str;printff%s\n”,p+10);)程序運(yùn)行后的輸出結(jié)果是A)ChinaB)BeijingC)ngD)ing答案:B36)有以下程序main(){chars[]=nABCD",*p;fbr(p=s+1;p<s+4;p++)printf(,,%s\n,,,p);}程序運(yùn)行后的輸出結(jié)果是A)ABCDBCDCDDB)ABCDC)BCDD)BCDCDD答案:D37)在函數(shù)調(diào)用過程中,如果函數(shù)如funA調(diào)用了函數(shù)funB,函數(shù)funB又調(diào)用了函數(shù)如funA,則A)稱為函數(shù)的直接遞歸調(diào)用B)稱為函數(shù)的間接遞歸調(diào)用C)稱為函數(shù)的循環(huán)調(diào)用D)C語言中不允許這樣的遞歸調(diào)用答案:B38)己有定義:inti,a[10],*p;,則合法的賦值語句是A)p=100;B)p=a[5];C)p=a[2]+2;D)p=a+2;答案:D39)以下敘述中正確的是A)局部交量說明為static存儲(chǔ)類,其生存期將得到延長(zhǎng)B)全局變量說明為static存儲(chǔ)類,其作用域?qū)⒈粩U(kuò)大C)任何存儲(chǔ)類的變量在未賦初值時(shí),其值都是不確定的D)形參可以使用的存儲(chǔ)類說明符與局部變量完全相同答案:A40)設(shè)有定義語句:charcl=92,c2=92;,則以下表達(dá)式中值為零的是A)clAc2B)cl&c2C>-c2D)cl|c2答案:A41)程序中對(duì)fun函數(shù)有如下說明void*fun();此說明的含義是A)fun函數(shù)無返回值B)fiin函數(shù)的返回值可以是任意的數(shù)據(jù)類型C)fun函數(shù)的返回值是無值型的指針類型D)指針fun指向一個(gè)函數(shù),該函數(shù)無返回值答案:C42)有以下程序main(){chars[]="Yes\n/NoM,*ps=s;puts(ps+4);*(ps+4)=0;puts(s);}程序運(yùn)行后的輸出結(jié)果是(選項(xiàng)D中的第一行是空行)A)n/NoYes/NoB)/NoYesC)n/NoYes/NoD)/NoYes答案-B43)有以下程序main(){unsignedinta;intb=-l;a=b;printfC%u”,a);}程序運(yùn)行后的輸出結(jié)果是A)-lB)65535C)32767D)-32768答案:B44)有以下程序voidfiin(int*a,inti,intj){intt;{t=a[i];a[i]=ag];a[j]=t;i++d-sfim(a,ij);))main(){intx[]={2,6,l,8),i;ftin(x,0,3);for(i=0;i<4;i-H-)printf("%2d",x[i]);printf("\n");)程序運(yùn)行后的輸出結(jié)果是A)1268B)8621C)8162D)8612答案:C45)有以下說明和定義語句structstudent{intage;charnum[8];};structstudentstu[3]={{20J200401”},{21J200402”},{19,”200403"}};structstudent*p=stu;以下選項(xiàng)中引用結(jié)構(gòu)體變量成員的表達(dá)式錯(cuò)誤的是A)(p++)->numB)p->numC)(*p).numD)stu[3].age答案:D46)有以下程序main(){intx[]={l,3,5,7,2,4,6,0},i,j,k;fbr(i=0;i<3;i-H-)fbr(j=2J>=ij-)]>x[j]){k=x[j];x[j]=x[j+l];x[j+1]=k;}fbr(i=0;i<3;i-H-)fbr(j=4j<7-iy-H-)if(x[j]>x[j+1]){k=x[j];x[j]=x[j+l];x[j+l]=k;}fbr(i=0;i<8;i4-+)printf("%d",x[i]);printff'\rT);}程序運(yùn)行后的輸出結(jié)果是A)75310246B)01234567076310462D)13570246答案:A47)有如下程序#include<stdio.h>main()FILE*fpl;fpl=fbpen(,'fl.txtM,"wH);mrintfifeijabc”);fclose(fpl);若文本文件fl.txt中原有內(nèi)容為:good,則運(yùn)行以上程序后文件fl.txt中的內(nèi)容為A)goodabcB)abcdC)abcD)abcgood答案:C(48;?(50)共用?題。以下程序的功能是:建立一個(gè)帶有頭結(jié)點(diǎn)的單向鏈表,并將存儲(chǔ)在數(shù)組中的字符依次轉(zhuǎn)儲(chǔ)到鏈表的各個(gè)結(jié)點(diǎn)中,請(qǐng)選擇正確的選項(xiàng)作為下劃線號(hào)碼與題號(hào)相同處的正確答案。#include<stdlib.h>structnode{chardata;stuctnode*next;};_(48) CreatList(char*s){structnode*h,*p,*q;h=(structnode*)malloc(sizeof(structnode));p=q=h;while(*s!^0,){p=(structnode*)malloc(sizeofi(structnode));p->data=(49) ;q->next=p;q=_(50)-;s++;}p->next=,\0,;returnh;}main(){charstr[]=wlinklist**;structnode*head;hcad=CreatList(str);A)char*B)structnodeC)structnode*D)char答案:C(48)?(50)共用一題。以下程序的功能是:建立一個(gè)帶有頭結(jié)點(diǎn)的單向鏈表,并將存儲(chǔ)在數(shù)組中的字符依次轉(zhuǎn)儲(chǔ)到鏈表的各個(gè)結(jié)點(diǎn)中,請(qǐng)選擇正確的選項(xiàng)作為下劃線號(hào)碼與題號(hào)相同處的正確答案。#include<stdlib.h>structnode{chardata;stuctnode*next;};_(48) CreatList(char*s){structnode*h,*p,*q;h=(structnode*)malloc(sizeofi(structnode));p=q=h;while(*s!=,\0,){p=(structnode*)malloc(sizeof(structnode));p->data= (49) ;q->next=p;q=—(50)一;s++;)p->next=^*;returnh;main(){charstr[]=Mlinklist”;Structnode*head;head=CreatList(st);}A)*sB)sC)*s++D)(*s)-H-答案:A(48)?(50)共用一題。以下程序的功能是:建立一個(gè)帶有頭結(jié)點(diǎn)的單向鏈表,并將存儲(chǔ)在數(shù)組中的字符依次轉(zhuǎn)儲(chǔ)到鏈表的各個(gè)結(jié)點(diǎn)中,請(qǐng)選擇正確的選項(xiàng)作為下劃線號(hào)碼與題號(hào)相同處的正確答案。#include<stdlib.h>structnode{chardata;stuctnode*next;};_(48) CreatList(char*s){structnode*h,*p,*q;h=(structnode*)malloc(sizeofl(structnode));p=q=h;while(*s!=W){p=(structnode*)malloc(sizeofi(structnode));p->data= (49) ;q->next=p;q=—(50)一;s++;)p->next=^';returnh;}main(){charstr[]=Mlinklist**;Structnode*hcad;head=CreatList(st);A)p->nextB)pC)sD)s->next答案:B二、填空題(每空2分,共40分)請(qǐng)將每一個(gè)空的正確答案寫在答題處【1】至【20】。1)在64位高檔微機(jī)中,CPU能同時(shí)處理【1】個(gè)字節(jié)的二進(jìn)制數(shù)據(jù)。本小題第1空答案:8或八E-mail地址由域名和用戶名兩部分組成,它們之間用@分隔,其中在@后面的部分是【2】。本小題第1空答案:域名或電子郵件服務(wù)器名Windows窗口一般由標(biāo)題欄、菜單欄、控制按鈕等部分組成。為了移動(dòng)窗口,則要用鼠標(biāo)拖動(dòng)[3]o本小題第1空答案:標(biāo)題欄4)計(jì)算機(jī)軟件分為系統(tǒng)軟件和應(yīng)用軟件,UNIX系統(tǒng)屬于【4】。本小題第1空答案:系統(tǒng)軟件5)在Windows環(huán)境下,為了將屏幕內(nèi)容存入剪貼板,應(yīng)按【5】鍵。本小題第1空答案:PrintScreen或PrtScm或PrtSc6)以下程序段的輸出結(jié)果是[6】。inti=9;printfi("%o\n",i);本小題第1空答案:117)以下程序運(yùn)行后的輸出結(jié)果是[7】。main(){inta,b,c;a=25;b=025;c=0x25;printff%d%d%d\nM,a,b,c);}本小題第1空答案:2521378)以下程序運(yùn)行后的輸出結(jié)果是[8】。main(){intp[7]={ll,13,14,15,16,17,18};inti=Oj=O;while(i<7&&p[i]%2=l)j+=p[i-H-];printf(,,%d\n,,j);}1本小題第1空答案:249)以下程序運(yùn)行后的輸出結(jié)果是[9],main(){intx=l,y=O,a=O,b=O;switch(x){case1:switch(y){case0:a++;break;b-H-;break;)a-H-;b-H-;break;)printff%d%d\n",a,b);}本小題第1空答案:2110)以下程序運(yùn)行后的輸出結(jié)果是【10】。main(){inta[4][4]={{123,4},{5,6,7,8},{ll[2,13』4},{15/6,17』8}};inti=0j=0,s=0;while(i++<4)|if(i=2||i==4)continue;j=o;do{s+=a[i][j];j++;}while(j<4);}printfi["%d\n",s);)本小題第1空答案:9211)以卜程序運(yùn)行后的輸出結(jié)果是【11】。main(){chara[]="Language”,b[]="Programe”;char*pl,*p2;intk;pl=a;p2=b;fbr(k=0;kv=7;k++)ifi(*(p1+k)=*(p2+k))printf(,,%c",*(p1+k));}本小題第1空答案:gae12)以下程序運(yùn)行后的輸出結(jié)果是【12】。main(){chara[]=M123456789M,*p;inti=0;p=a;while(*p){if(i%2=0)*p=**';p++;i++;)puts(a);}本小題第1空答案:*2*4*6*8*13)以下程序中,fbr循環(huán)體執(zhí)行的次數(shù)是【13】。#defineN2#deflneMN+1#defineKM+l*M/2main(){inti;fbr(i=l;i<K;i++)}本小題第1空答案:414)本小題第1空答案:x本小題第2空答案:x*x+l或l+x*x15)以下程序從終端讀入數(shù)據(jù)到數(shù)組中,統(tǒng)計(jì)其中正數(shù)的個(gè)數(shù),并計(jì)算它們之和。請(qǐng)?zhí)羁?。main(){inti,a[20],sum,count;sum=count=0;for(i=0;i<20;i++)scanf("%d",[16]);for(i=0;i<20;i++){if(a[i]>0){count++;sum+=[17];)printf("sum=%d,count=%d\n",sum,count);}本小題第1空答案:&a[i]或a+i本小題第2空答案:a[i]或*(a+i)16)以下程序中,函數(shù)SumColumMin的功能是:求出M行N列二維數(shù)組每列元素中的最小值,并計(jì)算它們的和值。和值通過形參傳回主函數(shù)輸出。請(qǐng)?zhí)羁铡?defineM2//defineN4voidSumColumMin(inta[M][N],int*sum){intij,k,s=O;for(i=0;i<N;i++){k=0;for(j=lj<M;j++)if(a[k][i]>aU][i])k=j;s+=[18];)main(){intx[M][N]={3,2,5,l,4,l,8,3},s;SumColumMin([20]);printfi["%d\n",s);)本小題第1空答案:a[k][i]本小題第2空答案:*sum本小題第3空答案:x,&s一、選擇題(⑴?(10)每小題2分,(n)?(50)每小題I分,共60分)下列各題A)、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的。01)數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)是指A)存儲(chǔ)在外存中的數(shù)據(jù)B)數(shù)據(jù)所占的存儲(chǔ)空間量C)數(shù)據(jù)在計(jì)算機(jī)中的順序存儲(chǔ)方式D)數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示答案:D02)下列關(guān)于棧的描述中錯(cuò)誤的是A)棧是先進(jìn)后出的線性表B)棧只能順序存儲(chǔ)C)棧具有記憶作用D)對(duì)棧的插入與刪除操作中,不需要改變棧底指針答案:B03)對(duì)于長(zhǎng)度為n的線性表,在最壞情況下,下列各排序法所對(duì)應(yīng)的比較次數(shù)中正確的是A)冒泡排序?yàn)閚/2B)冒泡排序?yàn)閚C)快速排序?yàn)閚D)快速排序?yàn)閚(n-l)/2答案:D04)對(duì)長(zhǎng)度為n的線性表進(jìn)行順序查找,在最壞情況下所需要的比較次數(shù)為A)B)n/2C)nD)n+1答案:C05)下列對(duì)于線性鏈表的描述中正確的是A)存儲(chǔ)空間不一定是連續(xù),且各元素的存儲(chǔ)順序是任意的B)存儲(chǔ)空間不一定是連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面C)存儲(chǔ)空間必須連續(xù),且前件元素一定存儲(chǔ)在后件元素的前面D)存儲(chǔ)空間必須連續(xù),且各元素的存儲(chǔ)順序是任意的答案:A06)下列對(duì)于軟件測(cè)試的描述中正確的是A)軟件測(cè)試的目的是證明程序是否正確B)軟件測(cè)試的目的是使程序運(yùn)行結(jié)果正確C)軟件測(cè)試的目的是盡可能多地發(fā)現(xiàn)程序中的錯(cuò)誤D)軟件測(cè)試的目的是使程序符合結(jié)構(gòu)化原則答案:C07)為了使模塊盡可能獨(dú)立,耍求A)模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量強(qiáng)B)模塊的內(nèi)聚程度要盡量高,且各模塊間的耦合程度要盡量弱C)模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量弱D)模塊的內(nèi)聚程度要盡量低,且各模塊間的耦合程度要盡量強(qiáng)答案:B08)下列描述中正確的是A)程序就是軟件B)軟件開發(fā)不受計(jì)算機(jī)系統(tǒng)的限制C)軟件既是邏輯實(shí)體,又是物理實(shí)體D)軟件是程序、數(shù)據(jù)與相關(guān)文檔的集合答案:D09)數(shù)據(jù)獨(dú)立性是數(shù)據(jù)庫(kù)技術(shù)的重要特點(diǎn)之一。所謂數(shù)據(jù)獨(dú)立性是指A)數(shù)據(jù)與程序獨(dú)立存放B)不同的數(shù)據(jù)被存放在不同的文件中C)不同的數(shù)據(jù)只能被對(duì)應(yīng)的應(yīng)用程序所使用D)以上三種說法都不對(duì)答案:D10)用樹形結(jié)構(gòu)表示實(shí)體之間聯(lián)系的模型是A)關(guān)系模型B)網(wǎng)狀模型C)層次模型D)以上三個(gè)都是答案:C11)算法具有五個(gè)特性,以下選項(xiàng)中不屬于算法特性的是A)有窮性B)簡(jiǎn)潔性C)可行性D)確定性答案:B12)以下選項(xiàng)中可作為C語言合法常量的是A)-80.B)-080C)-8el.OD)-80.0e答案:A13)以下敘述中正確的是A)用C程序?qū)崿F(xiàn)的算法必須要有輸入和輸出操作B)用C程序?qū)崿F(xiàn)的算法可以沒有輸出但必須要有輸入C)用C程序?qū)崿F(xiàn)的算法可以沒有輸入但必須要有輸出D)用C程序?qū)崿F(xiàn)的算法可以既沒有輸入也沒有輸出答案:C14)以下不能定義為用戶標(biāo)識(shí)符是A)MainB)_0C)_intD)sizeof答案:D15;以下選項(xiàng)中,不能作為合法常量的是A)1.234c04B)1.234e0.4C)1.234e+4D)1.234e0答案:B16)數(shù)字字符0的ASCII值為48,若有以下程序main(){chara=T,b=2;printf(n%c,H,b++);printf(H%d\n,,,b-a);)程序運(yùn)行后的輸出結(jié)果是A)3,2B)50,2C)2,2D)2,50答案?C17)有以下程序main(){intm=12,n=34;printff%d%d”,m++,Hn);printf{M%d%d\nH,n++,-H-m);程序運(yùn)行后的輸出結(jié)果是
A)12353514B)12353513C)12343514D)12343513答案:A18)有定義語句:intb;charc[10];,則正確的輸入語句是A)scanf(,,%d%sM,&b,&c);B)scanf(M%d%sM,&b,c);C)scanfi(M%d%sM,b,c);D)scanff%d%sn,b,&c);答案:B19)有以下程序main(){intm,n,p;scanf("m=%dn=%dp=%d",&m,&n,&p);printfTM%d%d%d\nM,m,n,p);若想從鍵盤上輸入數(shù)據(jù),使變量m中的值為123,n中的值為456,p中的值為789,則正確的輸入是A)m=123n=456p=789B)m=123n=456p=789C)m=!23,n=456,p=789D)123456789套一A20「有眾下程序main(){inta,b,d=25;a=d/10%9;b=a&&(-l);printf(M%d,%d\n,,,a,b);)程序運(yùn)行后的輸出結(jié)果是BB6,2,6,2,^:x)z\?7x)z\lzABcD答21)有以下程序main(){inti=lj=2,k=3;&&(++j=3IIk++=3))printfif(n%d%d%d\nH,ij,k);程序運(yùn)行后的輸出結(jié)果是A)123B)234C)223D)233答案:D22)若整型變量a、b、c、d中的值依次為:1、4、3、2。則條件表達(dá)式a<b?a:c<d?c:d的值是A)1B)2C)3D)4答案:A23)有以下程序main(){intp[8]={ll,12,13,14,15,16,17,18},i=0j=0;while(i++<7)if(p[i]%2)j+=p[i];printf(u%d\nnj);}程序運(yùn)行后的輸出結(jié)果是A)42B)45C)56D)60答案?R24)有以下程序main(){chara[7]="a0\0a0\0M;intij;i=sizeof(a);j=strlen(a);printff%d%d\n",i,j);}程序運(yùn)行后的輸出結(jié)果是A)22B)76C)72D)62答案:C25)以下能正確定義一維數(shù)組的選項(xiàng)是A)inta[5]={0,l,2,3,4,5);B)chara[]={0,l,2,3,4,5);C)chara={,A7B,;C,};D)inta[5]=M0123M;答案:B26)有以下程序intfl(intx,inty){returnx>y?x:y;}intf2(intx,inty){returnx>y?y:x;}main(){inta=4,b=3,c=5,d=2,e,£g;e=f2(fl(a,b),fl(c,d));f^fl(f2(a,b),f2(c,d));g=a+b+c+d-e-fprintfi(,,%d,%d,%d\nM,e,f,g);)程序運(yùn)行后的輸出結(jié)果是A)4,3,7B)3,4,7C)5,2,7D)2,5,7答案:A27)已有定義:chara[]="xyz",b[]=3,y,N};,以下敘述中正確的是A)數(shù)組a和b的長(zhǎng)度相同B)a數(shù)組長(zhǎng)度小于b數(shù)組長(zhǎng)度C)a數(shù)組長(zhǎng)度大于b數(shù)組長(zhǎng)度D)上述說法都不對(duì)答案:C28)有以下程序voidf(int*x,int*y){intt;t=*x;*x=*y;*y=t;}main(){inta[8]={1,2,3,4,5,6,7,8},i,*p,*q;P=a;q=&a[7];while(p<q){Rp,q);P++;q-;)for(i=0;i<8;i-H-)printf("%d,",a[i]);程序運(yùn)行后的輸出結(jié)果是A)8,2,3,4,5,6,7,l,B)5,6,7,8,1,2,3A01,2,3,4,5,6,7,8,D)8,7,6,5,4,3,2,l,答案:D29)有以下程序main(){inta[3][3],*p,i;P=&a[0][0];fbr(i=0;i<9;i-H-)p[i]=i;fbr(i=0;i<3;i++)printfif%dH,a[l][i]);}程序運(yùn)行后的輸出結(jié)果是A)012B)123C)234D)345答案:D30)以下敘述中錯(cuò)誤的是A)對(duì)于double類型數(shù)組,不可以直接用數(shù)組名對(duì)數(shù)組進(jìn)行整體輸入或輸出B)數(shù)組名代表的是數(shù)組所占存儲(chǔ)區(qū)的首地址,其值不可改變C)當(dāng)程序執(zhí)行中,數(shù)組元素的下標(biāo)超出所定義的下標(biāo)范圍時(shí),系統(tǒng)將給出“下標(biāo)越界”的出錯(cuò)信息D)可以通過賦初值的方式確定數(shù)組元素的個(gè)數(shù)答案:C31)有以下程序#defineN20fun(inta[],intn,intm){intij;fbr(i=m;i>=n;i-)a[i+l]=a[i];)main(){inti,a[N]={l,2,3,4,5,6,7,8,9,10};fun(a,2,9);fbr(i=0;i<5;i++)print<w%dM,a[i]);)程序運(yùn)行后的輸出結(jié)果是1023412344Q12334D)12234答案:C32)有以下程序main(){inta[3][2]={0},(*ptr)[2],ij;fbr(i=0;i<2;i-H-){ptr=a+i;scanf(”%d”,ptr);ptr++;}for(i=0;i<3;i-H-){forj=0;j<2j-H-)printf(”%2d”,a[i皿);printf”);若運(yùn)行時(shí)輸入:123〈回車〉,則輸出結(jié)果為A)產(chǎn)生錯(cuò)誤信息B)1000C)123000D)102030答案:B33)有以下程序prt(int*m,intn){inti;for(i=0;i<n;i-H-)}main(){inta[]={1,2,3,4,5},i;prt(a,5);for(i=0;i<5;i++)printf("%d,",a[i]);程序運(yùn)行后的輸出結(jié)果是A)1,2,3,4,5,B)2,3,4,5,6,C)3,4,5,6,7,D)2,3,4,5,l,答案:B34)有以下程序main(){inta[]={l,2,3,4,5,6,7,8,9,01,*p;for(p=a;p<a+10;p++)printf("%d,",*p);)程序運(yùn)行后的輸出結(jié)果是A)1,2,3,4,5,6,7,8,9,0,B)2,3,4,5,6,7,8,9,10,1,C)0,l,2,3,4,5,6,7,8,9,D)l,1,1,1,1,1,1,1,1,1,答案?A35)有以下程序#defineP3voidF(intx){return(P*x*x);}main(){printf("%d\n",F(3+5));}程序運(yùn)行后的輸出結(jié)果是A)192B)29C)25D)編譯出錯(cuò)答案:D36)有以下程序main(){intc=35;printfl(H%d\nH,c&c);}程序運(yùn)行后的輸出結(jié)果是A)0B)70C)35D)1答案:C37)以下敘述中正確的是A)預(yù)處理命令行必須位于源文件的開頭B)在源文件的一行上可以有多條預(yù)處理命令
C)宏名必須用大寫字母表示D)宏替換不占用程序的運(yùn)行時(shí)間答案:D38)若有以下說明和定義uniondt{inta;charb;doublec;}data;以下敘述中錯(cuò)誤的是A)data的每個(gè)成員起始地址都相同B)變量data所占內(nèi)存字節(jié)數(shù)與成員c所占字節(jié)數(shù)相等C)程序段:data.a=5;printf("%f\n",data.c);輸出結(jié)果為5.000000D)data可以作為函數(shù)的實(shí)參答案:C39)以下語句或語句組中,能正確進(jìn)行字符串賦值的是A)char*sp;*sp="right!";B)chars[10];s="right!";C)chars[10];*s="rightl";DJehar*sp="right!答案:D40)設(shè)有如F說明typedefstructST{longa;intb;charc[2];}NEW;則下面敘述中正確的是A)以上的說明形式非法B)ST是一個(gè)結(jié)構(gòu)體類型C)NEW是一個(gè)結(jié)構(gòu)體類型D)NEW是一個(gè)結(jié)構(gòu)體變量答案.C41)有以下程序main(){inta=l,b;for(b=1;b<=10;b++){if(a>=8)break;if(a%2=l){a+=5;continue;}a-=3;)printf{"%d\n",b);}程序運(yùn)行后的輸出結(jié)果是A)3B)4C)5D)6答案:B42)有以下程序main(){chars[]=n159",*p;P=s;printff%c”,*p++);printf(H%c',,*p++);}程序運(yùn)行后的輸出結(jié)果是A15161259A15161259粟XI/^1/\1/ErABcD答43)有以下函數(shù)fun(char*a,char*b){while((*a!=W)&&(*b!=^,)&&(*a==*b)){a++;b++;)return(*a-*b);)該函數(shù)的功能是A)計(jì)算a和b所指字符串的長(zhǎng)度之差B)將b所指字符串復(fù)制到a所指字符串中C)將b所指字符串連接到a所指字符串后面D)比較a和b所指字符串的大小答案-D44)有以下程序main(){intnum[4][4]={{l,2,3,4},{5,6,7,8},{9,10,ll,12},{13,14,15,16}},ij;fbr(i=0;i<4;i-H-){fbrj=l;j<=iy-H-)printf(H%4ct7');for(j=u<4;j++)printf("%4d”,num[i][JD;printf("\nM);若要按以下形式輸出數(shù)組右上半三角1234678111216則在程序下劃線處應(yīng)填入的是A)i-1B)iC)i+1D)4-i答案-B45)有"下程序point(char*p){p+=3;}main(){charb[4]={'a:b','c',d},*p=b;point(p);printf(n%c\n",*p);}程序運(yùn)行后的輸出結(jié)果是46)程序中若有如下說明和定義語句charfun(char*);main(){char*s=HoneH,a[5]={0},(*f1)()=fun,ch;)以下選項(xiàng)中對(duì)函數(shù)fun的正確調(diào)用語句是A)(*fl)(a);B)*fi(*s);C)fun(&a);D)ch=*fl(s);答案:A47)A)p->next=q->next;B)p->next=p->next->next;C)p->next=r;D)p=q->next;答案:D48)以下對(duì)結(jié)構(gòu)體類型變量td的定義中,錯(cuò)誤的是A)typedefstructaa{intn;floatm;}AA;AAtd;B)structaa{intn;floatm;}td;structaatd;C)struct{intn;floatm;}aa;structaatd;D)struct{intn;floatm;}td;答案:C49)以下與函數(shù)fkeek(fp,OL,SEEK_SET)有相同作用的是A)feofl(fp)B)ftell(fp)C)fgetc(fp)D)rewind(fp)答案:D50)有以下程序#include<stdio.h>voidWriteStr(char*fn,char*str){FILE*fp;fp=fbpen(fh,,,w");fputs(str,fp);fclose(fp);)main(){WriteStr(Mtl.datn,Mstart");WriteStr(Htl.datH,"endM);}程序運(yùn)行后,文件tl.dat中的內(nèi)容是A)startB)endC)startcndD)endrt答案:B二、填空題(每空2分,共40分)請(qǐng)將每一個(gè)空的正確答案寫在答題處【1】至【20】。1)某二叉樹中度為2的結(jié)點(diǎn)有18個(gè),則該二叉樹中有【1】個(gè)葉子結(jié)點(diǎn)。本小題第1空答案:192)在面向?qū)ο蠓椒ㄖ?,類的?shí)例稱為[2]o本小題第1空答案:對(duì)象3)診斷和改正程序中錯(cuò)誤的工作通常稱為【3】。本小題第1空答案:調(diào)試或程序調(diào)試或軟件調(diào)試或Debug或調(diào)試程序或調(diào)試軟件4)在關(guān)系數(shù)據(jù)庫(kù)中,把數(shù)據(jù)表示成二維表,每一個(gè)二維表稱為【4】。本小題第1空答案:關(guān)系或關(guān)系表5)問題處理方案的正確而完整的描述稱為[5L本小題第1空答案:算法或程序或流程圖6)以下程序運(yùn)行時(shí)若從鍵盤輸入:102030〈回車>。輸出結(jié)果是[6】。#include<stdio.h>main(){inti=0j=0,k=0;scanfC%d%*d%d”,&i,&j,&k);printfC%d%d%d\n”,iJ,k);;本小題第1空答案:103007)以下程序運(yùn)行后的輸出結(jié)果是【7】。#defineS(x)4*x*x+lmain(){inti=6,j=8;printfC%d\n”,S(i+j));)本小題第1空答案:818)以下程序運(yùn)行后的輸出結(jié)果是【81main(){inta=3,b=4,c=5,t=99;ifi(b<a&&a<c)t=a;a=c;c=t;ifi[a<c&&b<c)t=b;b=a;a=t;printfi[n%d%d%d\nMa,b,c);}木小題第1空答案:45999)以下程序運(yùn)行后的輸出結(jié)果是[91main(){inta,b,c;a=10;b=20;c=(a%b<l)||(a^>1);printfi(H%d%d%d\nMa,b,c);)本小題第1空答案:1020010)以下程序運(yùn)行后的輸出結(jié)果是【10】。main(){charcl,c2;for(c1='0',c2='9';c1<c2;c1++,c2-)printf(n%c%cM,cl,c2);printff'n”);)本小題第1空答案:091827364511)已知字符A的ASCH代碼值為65,以下程序運(yùn)行時(shí)若從鍵盤輸入:B33〈回車〉。則輸出結(jié)果是【11】。#include<stdio.h>main(){chara,b;a=getchar();scanf("%d,,,&b);a=a?'A'+'O';b=b*2;printff%c%c\nna,b);}本小題第1空答案:IB12)以下程序中,fun函數(shù)的功能是求3行4列二維數(shù)組每行元素中的最大值。請(qǐng)?zhí)羁?。voidfun(inti,int,int(*)[4],int*);main(){inta[3][4]={{12,41,36,28},{19,33,15,27},{3,27,19,1}},b[3],i;fiin(3,4,a,b);fbr(i=0;i<3;i++)printfC%4d”,b[i]);printfC%");}voidfun(intm,intn,intar[][4],int*br){intij,x;fbr(i=0;i<m;i-H-){x=ar[i][0];for(j=O;j<n;j-H-)if(x<ar[i][j])x=ar[i][j];[12]=x;本小題第1空答案:br[i]或*(brH)13)以下程序運(yùn)行后的輸出結(jié)果是【13】。voidswap(intx,inty){intt;t=x;x=y;y=t;printf(n%d%d\nH,x,y);)main(){inta=3,b=4;swap(a,b);printf(M%d%d\nM,a,b);}本小題第1空答案:433414)以下程序運(yùn)行后的輸出結(jié)果是【14】。#include<string.h>voidfun(char*s,intp,intk){inti;fbr(i=p;i<k-l;i-H-)s[i]=s[i+2];Jmain(){chars[]-,abcdefgn;fun(s,3,strlen(s));puts(s);)本小題第1空答案:abcfg15)以下程序運(yùn)行后的輸出結(jié)果是【15】。#include<string.h>main(){charch[]=Mabcn,x[3][4];inti;fbr(i=0;i<3;i-H-)strcpy(x[i],ch);fbr(i=0;iv3;iH)printfi(M%sH,&x[i][i]);printCXn**);)本小題第1空答案:abcbcc16)以下程序運(yùn)行后的輸出結(jié)果是【16】。fun(inta){intb=0;staticintc=3;b++;c++;return(a+b+c);}main(){inti,a=5;for(i=0;i<3;i++)printff%d%dH,i,fun(a));printfT'n”);}本小題第1空答案:01011121217)以下程序運(yùn)行后的輸出結(jié)果是【17】。structNODE{intk;structNODE*link;};main(){structNODEm[5],*p=m,*q=m+4;inti=0;while(p!=q){p->k=-H-i;p++;q->k=i-H-;q—;q->k=i;fbr(i=0;i<5;i++)printf(M%dH,m[i].k);printfT'n)本小題第1空答案:1343118)以下程序中函數(shù)huiwen的功能是檢查一個(gè)字符串是否是回文,當(dāng)字符串是回文時(shí),函數(shù)返回字符串:yes!,否則函數(shù)返回字符串:no!,并在主函數(shù)中輸出。所謂回文即正向與反向的拼寫都一樣,例如:adgda。請(qǐng)?zhí)羁铡?include<string.h>char*huiwen(char*str){char*pl,*p2;inti,t=0;pl=str;p2=[18];for(i=0;i<=strlen(st)/2;i-H-)if(*pl++!=*p2-){t=l;break;}if([19])retum("yes!");elseretum("no!");}main(){charstr[50];prints"Input:");scanf("%s",str);printf("%s\n",[20]);}本小題第1空答案:str+strlen(p1)-1或str+strlen(str)-l或str-l+strlen(str)或str-l+strlen(pl)本小題第2空答案:t==0或!t或t=^'或0=t或、0'==t本小題第3空答案:huiwen(str)一、選擇題(⑴?(10)每小題2分,(11)?(50)每小題I分,共60分)下列各題A)、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的。01)下列敘述中正確的是A)程序設(shè)計(jì)就是編制程序B)程序的測(cè)試必須由程序員自己去完成C)程序經(jīng)調(diào)試改錯(cuò)后還應(yīng)進(jìn)行再測(cè)試D)程序經(jīng)調(diào)試改錯(cuò)后不必進(jìn)行再測(cè)試答案:C02)下列數(shù)據(jù)結(jié)構(gòu)中,能用二分法進(jìn)行查找的是A)順序存儲(chǔ)的有序線性表B)線性鏈表C)二叉鏈表D)有序線性鏈表冬案:A03r下列關(guān)于棧的描述正確的是A)在棧中只能插入元素而不能刪除元素B)在棧中只能刪除元素而不能插入元素C)棧是特殊的線性表,只能在一端插入或刪除元素D)棧是特殊的線性表,只能在一端插入元素,而在另一端刪除元素答案:C04)下列敘述中正確的是A)一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)只能有一種存儲(chǔ)結(jié)構(gòu)B)數(shù)據(jù)的邏輯結(jié)構(gòu)屬于線性結(jié)構(gòu),存儲(chǔ)結(jié)構(gòu)屬于非線性結(jié)構(gòu)C)一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)不影響數(shù)據(jù)處理的效率D)一個(gè)邏輯數(shù)據(jù)結(jié)構(gòu)可以有多種存儲(chǔ)結(jié)構(gòu),且各種存儲(chǔ)結(jié)構(gòu)影響數(shù)據(jù)處理的效率答案:D05)下列描述中正確的是A)軟件工程只是解決軟件項(xiàng)目的管理問題B)軟件工程主要解決軟件產(chǎn)品的生產(chǎn)率問題C)軟件工程的主要思想是強(qiáng)調(diào)在軟件開發(fā)過程中需要應(yīng)用工程化原則D)軟件工程只是解決軟件開發(fā)中的技術(shù)問題答案:C06)在軟件設(shè)計(jì)中,不屬于過程設(shè)計(jì)工具的是A)PDL(過程設(shè)計(jì)語言)B)PAD圖C)N-S圖D)DFD圖答案:D07)下列敘述中正確的是A)軟件交付使用后還需要進(jìn)行維護(hù)B)軟件一旦交付使用就不需要再進(jìn)行維護(hù)C)軟件交付使用后其生命周期就結(jié)束D)軟件維護(hù)是指修復(fù)程序中被破壞的指令答案:A08)數(shù)據(jù)庫(kù)設(shè)計(jì)的根本目標(biāo)是要解決A)數(shù)據(jù)共享問題B)數(shù)據(jù)安全問題C)大量數(shù)據(jù)存儲(chǔ)問題D)簡(jiǎn)化數(shù)據(jù)維護(hù)答案:A09)設(shè)有如下關(guān)系表:RSTABCABCABC112313112223223313則下列操作中正確的是A)T=RCSB)T=RUSC)T=RxSD)T=R/S答案:B10)數(shù)據(jù)庫(kù)系統(tǒng)的核心是A)數(shù)據(jù)模型B)數(shù)據(jù)庫(kù)管理系統(tǒng)C)數(shù)據(jù)庫(kù)D)數(shù)據(jù)庫(kù)管理員答案:B11)以下敘述中錯(cuò)誤的是A)用戶所定義的標(biāo)識(shí)符允許使用關(guān)鍵字B)用戶所定義的標(biāo)識(shí)符應(yīng)盡量做到“見名知意”C)用戶所定義的標(biāo)識(shí)符必須以字母或下劃線開頭D)用戶定義的標(biāo)識(shí)符中,大、小寫字母代表不同標(biāo)識(shí)答案:A12)以下敘述中錯(cuò)誤的是A)C語句必須以分號(hào)結(jié)束B)復(fù)合語句在語法上被看作一條語句C)空語句出現(xiàn)在任何位置都不會(huì)影響程序運(yùn)行D)賦值表達(dá)式末尾加分號(hào)就構(gòu)成賦值語句答案:C13)以下敘述中正確的是A)調(diào)用printf函數(shù)時(shí),必須要有輸出項(xiàng)B)使用putchar函數(shù)時(shí),必須在之前包含頭文件stdio.hC)在C語言中,整數(shù)可以以十二進(jìn)制、八進(jìn)制或十六進(jìn)制的形式輸出D)調(diào)用getchar函數(shù)讀入字符時(shí),可以從鍵盤上輸入字符所對(duì)應(yīng)的ASCII碼答案:B14)以下關(guān)于函數(shù)的敘述中正確的是A)每個(gè)函數(shù)都可以被其它函數(shù)調(diào)用(包括main函數(shù))B)每個(gè)函數(shù)都可以被單獨(dú)編譯C)每個(gè)函數(shù)都可以單獨(dú)運(yùn)行D)在一個(gè)函數(shù)內(nèi)部可以定義另一個(gè)函數(shù)答案:B15)若有語句:char*line[5];,以下敘述中正確的是A)定義line是一個(gè)數(shù)組,每個(gè)數(shù)組元素是一個(gè)基類型為char的指針變量B)定義line是一個(gè)指針變量,該變量可以指向一個(gè)長(zhǎng)度為5的字符型數(shù)組C)定義line是一個(gè)指針數(shù)組,語句中的*號(hào)稱為間址運(yùn)算符D)定義line是一個(gè)指向字符型函數(shù)的指針答案:A16)有以下程序段typedefstructNODE{intnum;structNODE*next;}OLD;以下敘述中正確的是A)以上的說明形式非法B)NODE是一個(gè)結(jié)構(gòu)體類型C)OLD是一個(gè)結(jié)構(gòu)體類型D)OLD是一個(gè)結(jié)構(gòu)體變量答案:C17)以下敘述中錯(cuò)誤的是A)C語言中對(duì)二進(jìn)制文件的訪問速度比文本文件快B)C語言中,隨機(jī)文件以二進(jìn)制代碼形式存儲(chǔ)數(shù)據(jù)C)語句FILEfp;定義了一個(gè)名為fp的文件指針D)C語言中的文本文件以ASCII碼形式存儲(chǔ)數(shù)據(jù)答案:C18)當(dāng)把以下四個(gè)表達(dá)式用作if語句的控制表達(dá)式時(shí),有一個(gè)選項(xiàng)與其它三個(gè)選項(xiàng)含義不同,這個(gè)選項(xiàng)是A)k%2B)k%2==lC)(k%2)!=0D)!k%2=l答案:D19)A)l/3*sin(l/2)*sin(l/2)B)sin(0.5)*sin(0.5)/3C)pow(sin(0.5),2)/3D)l/3.0*pow(sin(1.0/2),2)答案:A20)以下能正確定義且賦初值的語句是A)intnl=n2=10;B)charc=32;C)floatD)doublex=12.3E2.5;答案:B21)以下程序的功能是:給r輸入數(shù)據(jù)后計(jì)算半徑為r的圓面積s。程序在編譯時(shí)出錯(cuò)。main()/*Beginning*/{intr;floats;scanfiT%d",&r);s=*7t*r*r;printfCs=%f\n",s);)出錯(cuò)的原因是A)注釋語句書寫位置錯(cuò)誤B)存放圓半徑的變量r不應(yīng)該定義為整型C)輸出語句中格式描述符非法D)計(jì)算圓面積的賦值語句中使用了非法變量答案:D22)設(shè)有定義:intk=l,m=2;floatf=7;,則以下選項(xiàng)中錯(cuò)誤的表達(dá)式是A)k=k>=kB)?k++C)k%int(f)D)k>=f>=m答案:C23)設(shè)有定義inta=2,b=3,c=4;,則以下選項(xiàng)中值為0的表達(dá)式是A)(!a=l)&&(!b=0)B)(a<b)&&!c||lC)a&&bD)a||(b+b)&&(c-a)答蠢A24)有以下程序段intk=0,a=l,b=2,c=3;k=a<b?b:a;k=k>c?c:k;執(zhí)行該程序段后,k的值是A)3B)2C)1D)0答案:B25)設(shè)變量a、b、c、d和y都己正確定義并賦值。若有以下if語句if(a<b)if{c=d)y=0;elsey=l;該語句所表示的含義是A)B)C)D)答案:C26)有以下程序段intn,t=l,s=0;scanf(M%dM,&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ù)答案:D27)設(shè)變量已正確定義,則以下能正確計(jì)算仁n!的程序段是A)f=0;for(i=l;i<=n;i-H-)f*=i;B)f=l;fbr(i=l;i<n;i++)f*=i;c)f=l;
fbr(i=n;i>l;i++)f*=i;D)f=l;fbr(i=n;i>=2;i-)f*=i;答案:D28)設(shè)有定義intnl=0,n2,*p=&n2,*q=&nl;,以下賦值語句中與n2=nl;語句等價(jià)的是A)*p=*q;B)p=q;C)*p=&nl;D)p=*q;答案:A29)若有定義:intx=O,*p=&x;,則語句printf("%d\n”,*p);的輸出結(jié)果是A)隨機(jī)值B)0C)x的地址D)p的地址答案:B30)設(shè)函數(shù)ftm的定義形式為voidfun(charch,floatx){...}則以下對(duì)函數(shù)fun的調(diào)用語句中,正確的是A)fun("abcn,3.0)B)t=funCD\16.5);C)fun(*65*,2.8);D)fun(32,32);答案-D31)有以下程序main(){inta[10]={1,2,3,4,5,67,8,9,10),*p=&a[3],*q=p+2;printfT'%d\n",*p+*q);}程序運(yùn)行后的輸出結(jié)果是A)16B)10C)8D)6答案?R32)有以下程序main(){charp[]={,a\rb,,,c,};q[]=,,abcM;printf(M%d%d\n",sizeof(p),sizeof(q));}程序運(yùn)行后的輸出結(jié)果是c43413c43413^:43344\)z\)/\1/ErABcDyr33)有以卜程序#definef(x)(x*x)main(){intil,i2;il=fi(8)/fi(4);i2=fi[4+4)/f(2+2);printfT%d,%d\n/l,i2);程序運(yùn)行后的輸出結(jié)果是A)64,28B)4,4C)4,3D)64,64
答案:C34)有以下程序main(){charal-M,,a2-m,;printf(H%c\n,,,(al,a2));)以下敘述中正確的是A)程序輸出大寫字母MB)程序輸出小寫字母mC)格式說明符不足,編譯出錯(cuò)D)程序運(yùn)行時(shí)產(chǎn)生出錯(cuò)信息答案:B35)有以下程序#include<stdio.h>main(){charcl=T,c2=2;cl=getchar();c2=getchar();putchar(c1);putchar(c2);)當(dāng)運(yùn)行時(shí)輸入:av回車〉后,以下敘述正確的是A)變量cl被賦予字符a,c2被賦予回車符B)程序?qū)⒌却脩糨斎氲?個(gè)字符C)變量cl被賦予字符a,c2中仍是原有字符2D)變量cl被賦予字符a,c2中將無確定值答案:A36)有以下程序main(){intk=5,n=0;while(k>O){switch(k){defhult:break;n+=k;case3:n+=k;}k-;}printff%d\n”m);}A)0B)4C)6D)7答案-D37)有以下程序main(){inta[]={2,4,6,8,10},y=0,x,*p;P=&a[l];fbr(x=l;x<3;x++)y+=p[x];printf(u%d\nM,y);程序運(yùn)行后的輸出結(jié)果是c10c10U1415羔XI/Xu/ErABcD答38)有以下程序voidsort(inta[],intn){intij,t;for(i=0;i<n-l;i++)fbr(j=i+1y<nj++)if<a[i]<a[j]]){t=a[i];a[i]=a[j];a[j]=t;})main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},i;sort(aa+2,5);for(i=0;i<10;i++)printf("%d,",aa[i]);printf("\n");)程序運(yùn)行后的輸出結(jié)果是A)1,2,3,4,5,6,7,8,9,10,B)1,2,7,6,3,4,5,8,9,10,01,2,7,6,5,4,3,8,9,10,D)1,2,9,8,7,6,5,4,3,10,答空?C39)有以下程序voidsum(inta[]){a[0]=a[-l]+a[l];}main(){inta[10]={1,2,3,4,5,6,7,8,9,10};sum(&a[2]);printfC%d\n”,a[2]);}程序運(yùn)行后的輸出結(jié)果是A)6B)7C)5D)8答案.a40)有"下程序voidswap1(intcO[],intcl[]){intt;t=cO[O];c0[0]=cl[0];cl[O]=t;}voidswap2(int*cO,int*cl){intt;t=*cO;*c0=*cl;*cl=t;}main(){inta[2]={3,5},b[2]={3,5};swapl(a,a+1);swap2(&b[0],&b[1]);printf(n%d%d%d%d\nn,a[0],a[l],b[0],b[l]);}程序運(yùn)行后的輸出結(jié)果是A)3553B)5335C)3535D)5353答案:D41)有以下程序#include<string.h>main(){charp[]={R,'b?c'},q[10]={printf(,,%d%d\n",strlen(p),strlen(q));以下敘述中正確的是
A)在給p和q數(shù)組置初值時(shí),系統(tǒng)會(huì)自動(dòng)添加字符串結(jié)束符,故輸出的長(zhǎng)度都為3B)由于p數(shù)組中沒有字符串結(jié)束符,長(zhǎng)度不能確定;但q數(shù)組中字符串長(zhǎng)度為3C)由于q數(shù)組中沒有字符串結(jié)束符,長(zhǎng)度不能確定;但p數(shù)組中字符串長(zhǎng)度為3D)由于p和q數(shù)組中都沒有字符串結(jié)束符,故長(zhǎng)度都不能確定答案:B42)有以下程序,其中函數(shù)f的功能是將多個(gè)字符串按字典順序排序#include<string.h>voidf(char*p[],intn){char*t;intij;fbr(i=O;i<n-l;i++)fbr(j=i+lu<nj4-+)if(strcmp(p[i],p[j])>O){t=p[i];p[i]=p[j];pg;})main(){char*p[5]={“abc”,”aabdWabbd”,”dcdbe”,“cd”};f(P,5);printfi["%d\n",strlen(p[1]));}程序運(yùn)行后的輸出結(jié)果是DD236件案A)B)C)D套43)有以下程序#include<string.h>voidfi(char*s,char*t){chark;k=*s;*s=*t;*t=k;s++;t-;if(*s))main(){charstr[10]="abcdefg",*p;p=str+strlen(str)/2-i-1;Rp,P-2);printf("%s\n",str);)程序運(yùn)行后的輸出結(jié)果是A)abcdefgB)gfedcbaC)gbcdefaD)abedcfg答案?B44)有以下程序floatfl(floatn){returnn*n;}floatf2(floatn){return2*n;}main(){float(*pl)(float),(*p2)(float),(*t)(float),yl,y2;pl=fl;p2=f2;yl=p2(p1(2.0));t=pl;pl=p2;p2=t;y2=p2(p1(2.0));printf("%3.0f,%3.0f\n",yl,y2);程序運(yùn)行后的輸出結(jié)果是A)8,16B)8,8C)16,16D)4,8答案?A45)有眾下程序inta=2;intflfintn){staticinta=3;intt=O;if(n%2){staticinta=4;t+=a++;}else{staticinta=5;t+=a-H-;}returnt+a-H-;)main(){ints=a,i;fbr(i=0;i<3;i-H-)s+=Ri);printf("%d\n”,s);}程序運(yùn)行后的輸出結(jié)果是A)26B)28C)29D)24答案-C46)有立下程序#include<string.h>structSTU{intnum;floatTotalScore;};void^structSTUp){structSTUs[2]={{20044,550},{20045,537}};p.num=s[l].num;p.TotalScore=s[1].TotalScore;}main(){structSTUs[2]={{20041,703},{20042,580}};Rs[0]);printff%d%3.0f\nM,s[0].nmn,s[0].TotalScore);)程序運(yùn)行后的輸出結(jié)果是A)20045537B)20044550C)20042580D)20041703答案?D47)有眾下程序#include<string.h>structSTU{charname[10];intnum;};voidfi(char*name,intnum){structSTUs[2]={{HSunDann,20044},{nPenghua",20045));num=s[0].nmn;strcpy(name,s[0].name);}main(){studSTUs[2]={{HYangSanM,20041},{,,LiSiGuoM,20042}},*p;p=&s[l];fi(p->name,p->num);printfi(H%s%d\nM,p->name,p->num);程序運(yùn)行后的輸出結(jié)果是A)SunDan20042B)SunDan20044C)LiSiGuo20042D)YangSan20041答案:A48)有以下程序stuctSTU{charname[10];intnum;floatTotalscore;};voidfi(structSTU*p){structSTUs[2]={{MSunDanM,20044,550},{"Penghua",20045,537}},*q=s;-H-p;-H-q;*p=*q;}main(){studSTUs[3]={{nYangSanM,20041,703},{HLiSiGuoH,20042,580}};的);printf(M%s%d%3.0f\n',,s[1].name,s[l].num,s[l].TotalScore);)程序運(yùn)行后的輸出結(jié)果是A)SunDan20044550B)Penghua20045537OLiSiGuo20042580D)SunDan20041703答案:B49)以下程序的功能是進(jìn)行位運(yùn)算main(){unsignedchara,b;a=7A3;b7&3;printftn%d%d\nH,a,b);)程序運(yùn)行后的輸出結(jié)果是A)43B)73C)70D)40冬塞?A50「有眾下程序#include<stdio.h>main(){FILE*fb;inti,k,n;fj>=fopen("data.dat",“w+”);fbr(i=l;iv6;iH){巾rintf(中」%d”,i);if(i%3=0)fprintf(fp,M\nn);}rewind(fp);fscanfi(fp,,,%d%dH,&k,&n);printfi(H%d%d\n,,,k,n);fclose(fp);}程序運(yùn)行后的輸出結(jié)果是A)00B)12345C)14D)12答案:D二、填空題(每空2分,共40分)請(qǐng)將每一個(gè)空的正確答案寫在答題處【1】至【20,1)數(shù)據(jù)管理技術(shù)發(fā)展過程經(jīng)過人工管理、文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)三個(gè)階段,其中數(shù)據(jù)獨(dú)立性最高的階段是[I]o本小題第1空答案:數(shù)據(jù)庫(kù)系統(tǒng)或數(shù)據(jù)庫(kù)系統(tǒng)階段或數(shù)據(jù)庫(kù)或數(shù)據(jù)庫(kù)階段或數(shù)據(jù)庫(kù)管理技術(shù)階段2)算法復(fù)雜度主要包括時(shí)間復(fù)雜度和【2】復(fù)雜度。本小題第1空答案:空間3)在進(jìn)行模塊測(cè)試時(shí),耍為每個(gè)被測(cè)試的模塊另外設(shè)計(jì)兩類模塊:驅(qū)動(dòng)模塊和承接模塊(樁模塊)。其中【3】的作用是將測(cè)試數(shù)據(jù)傳送給被測(cè)試的模塊,并顯示被測(cè)試模塊所產(chǎn)生的結(jié)果。本小題第1空答案:驅(qū)動(dòng)模塊4)一棵二叉樹第六層(根結(jié)點(diǎn)為第一層)的結(jié)點(diǎn)數(shù)最多為[4]個(gè)。本小題第1空答案:325)數(shù)據(jù)結(jié)構(gòu)分為邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu),循環(huán)隊(duì)列屬于[5]結(jié)構(gòu)。本小題第1空答案:存儲(chǔ)或物理或存儲(chǔ)結(jié)構(gòu)或物理結(jié)構(gòu)6)以下程序運(yùn)行后的輸出結(jié)果是(61main(){intx=0210;primff%X\n”,x);}本小題第1空答案:887)以下程序運(yùn)行后的輸出結(jié)果是【7】。main(){inta=l,b=2,c=3;iRc=a)printf(M%d\nM,c);elseprintf(H%d\iiM,b);)本小題第1空答案:18)已有定義:double*p;,請(qǐng)寫出完整的語旬,利用malloc函數(shù)使p指向一個(gè)雙精度型的動(dòng)態(tài)存儲(chǔ)單元[81本小題第1空答案:p=(double*)malloc(sizeof(double));或p=(double*)malloc(8);9)以下程序運(yùn)行后的輸出結(jié)果是[9】。main(){charc;intn=100;floatf=10;doublex;x=f*=n/=(c=50);printf(w%d%f\nM,n,x);}本小題第1空答案:220.0或220或220.或220.00000010)以下程序的功能是計(jì)算:s=l+12+123+1234+12345。請(qǐng)?zhí)羁?。main(){intt=O,s=O,i;fbr(i=l;i<=5;i-H-){t=i+[10];s=s+t;}printf(Hs=%d\n,',s);)本小題第1空答案:t*10或10*t11)已知字母A的ASCII碼為65°以下程序運(yùn)行后的輸出結(jié)果是【11】。main(){chara,b;a='A'+5?3;b=a+6-2;printf(M%
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度衛(wèi)生間清潔劑研發(fā)與供應(yīng)合同3篇
- 二零二五年度2025版文化創(chuàng)意產(chǎn)業(yè)融資合同范本4篇
- 2025年度環(huán)保工程派遣人員勞務(wù)合同范本4篇
- 擔(dān)保合同約定條款協(xié)議書(2篇)
- 2025年度摩托車租賃平臺(tái)合作合同范本3篇
- 2025年度牧草種植基地環(huán)境保護(hù)合同范本3篇
- 二零二五版苗木種植基地林業(yè)病蟲害防治合同2篇
- 二零二五年度物流供應(yīng)鏈融資借款合同大全4篇
- 2025年度洗碗服務(wù)企業(yè)社會(huì)責(zé)任履行合同4篇
- 2025年度二零二五苗木采購(gòu)合作框架合同范本4篇
- GB/T 16895.3-2024低壓電氣裝置第5-54部分:電氣設(shè)備的選擇和安裝接地配置和保護(hù)導(dǎo)體
- 計(jì)劃合同部部長(zhǎng)述職報(bào)告范文
- 人教版高一地理必修一期末試卷
- GJB9001C質(zhì)量管理體系要求-培訓(xùn)專題培訓(xùn)課件
- 二手車車主寄售協(xié)議書范文范本
- 窗簾采購(gòu)?fù)稑?biāo)方案(技術(shù)方案)
- 五年級(jí)上冊(cè)小數(shù)除法豎式計(jì)算練習(xí)300題及答案
- 語言規(guī)劃講義
- 生活用房設(shè)施施工方案模板
- 上海市楊浦區(qū)2022屆初三中考二模英語試卷+答案
- GB/T 9755-2001合成樹脂乳液外墻涂料
評(píng)論
0/150
提交評(píng)論