




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
PAGEPAGE152系,611班2009級C++強(qiáng)化訓(xùn)練試卷B(1)本卷中的選擇題,凡未注明(多選),均只有一個正確答案;(2)所有答題均應(yīng)填寫在答題紙上對應(yīng)的序號欄內(nèi),僅寫在試題欄中不予評分;(3)答題時,要求書寫工整,如果字跡過于潦草、模糊不清造成無法辨認(rèn),視為錯答;(4)答題結(jié)束后,請交答題紙。保留試卷,以備課堂使用。選擇題(25分)一幅具有真彩色(24位)、分辨率為1024╳768的數(shù)字圖象,在沒有進(jìn)行數(shù)據(jù)壓縮時,它的數(shù)據(jù)量大約是(1)。 A.900KB B.18MB C.3.75MB D.2.25MB已知X的補(bǔ)碼為10011000,則它的原碼是(2)A.01101000B.01100111C.11101000IP地址是一串很難記憶的數(shù)字,于是人們開發(fā)了(3),該系統(tǒng)給主機(jī)賦予一個用字母代表的名字,并負(fù)責(zé)IP地址與名字之間的轉(zhuǎn)換。A.DNS域名系統(tǒng)B.WINDOWSNT系統(tǒng)C.UNIX系統(tǒng)D.FTP系統(tǒng)下面是關(guān)于計算機(jī)中定點(diǎn)數(shù)和浮點(diǎn)數(shù)的一些敘述,正確的是(4)。A.浮點(diǎn)數(shù)是既有整數(shù)部分又有小數(shù)部分的數(shù),定點(diǎn)數(shù)只能表示純小數(shù)B.浮點(diǎn)數(shù)的尾數(shù)越長,所表示的數(shù)的精度就越高C.定點(diǎn)數(shù)可表示的數(shù)值范圍總是大于浮點(diǎn)數(shù)所表示的范圍D.浮點(diǎn)數(shù)使用二進(jìn)制表示,定點(diǎn)數(shù)使用十進(jìn)制表示系統(tǒng)軟件是給其他軟件提供服務(wù)的程序集合,下面的敘述中錯誤的是(5)。A.系統(tǒng)軟件與計算機(jī)硬件有關(guān)。B.在通用計算機(jī)系統(tǒng)中系統(tǒng)軟件幾乎是必不可少的。C.操作系統(tǒng)是系統(tǒng)軟件之一。D.IE瀏覽器也是一種系統(tǒng)軟件。微機(jī)硬件系統(tǒng)中地址總線的寬度(位數(shù))對(6)影響最大。A.存儲器的訪問速度B.CPU可直接訪問的存儲器空間大小C.存儲器的字長D.存儲器的穩(wěn)定性企業(yè)內(nèi)部網(wǎng)是采用TCP/IP技術(shù),集LAN、WAN和數(shù)據(jù)服務(wù)為一體的一種網(wǎng)絡(luò),它也稱為(7)。A.局域網(wǎng)B.廣域網(wǎng)C.IntranetD.Internet下列網(wǎng)絡(luò)協(xié)議中,不用于收發(fā)電子郵件的是__(8)____。A.IMAPB.POP3C.SMTPInternet使用TCP/IP協(xié)議實(shí)現(xiàn)了全球范圍的計算機(jī)網(wǎng)絡(luò)的互連,連接在Internet上的每一臺主機(jī)都有一個IP地址,下面不能作為IP地址的是_(9)。A.8B.88127.0.257.1假設(shè)某用戶上網(wǎng)時輸入,其中的http是(10)。超文本傳輸協(xié)議B.文件傳輸協(xié)議C.計算機(jī)主機(jī)域名D.TCP/IP協(xié)議若定義函數(shù)intf(intx){x++;returnx;}執(zhí)行以下語句:inta=5;f(a)+f(a);則a的值是(11)。A.5 B.6 C.7 D.8以下的函數(shù)原形說明中存在語法錯誤的是(12)。A.voidf(inta,int) B.voidf2(int,int);C.voidf3(int,int=5) D.intf4(intx;inty)對于基類中的private成員,其在公有派生類中的訪問權(quán)限為(13)。A.不可訪問 B.privateC.protected D.public下面關(guān)于基類與派生類的敘述正確的是(14)。A.派生類對象不能賦給基類對象B.派生類對象的地址不能賦給其基類的指針變量C.基類對象不能賦給派生類對象D.基類對象的地址能賦給派生類的指針變量下列有關(guān)運(yùn)算符重載的敘述正確的是(15)。A.非靜態(tài)成員函數(shù)重載運(yùn)算符時帶this指針B.友元函數(shù)重載運(yùn)算符時帶this指針C.成員函數(shù)與友元函數(shù)重載運(yùn)算符時都不帶this指針D.用成員函數(shù)與友元函數(shù)重載同一運(yùn)算符時,兩者的參數(shù)類型與參數(shù)個數(shù)相同設(shè)有以下說明語句:chars1[20]=”hello”,s2[20]=”China”,constchar*ptr=s1;以下語句中不符合C++語法規(guī)則的語句是(16)A.strcpy(s2,ptr) B.ptr=s2 C.ptr=ptr+4 D.*ptr=*s2設(shè)有類的定義:classM{public:int*v;M(){}M(inti){v=newint(i);}};下列表示中,定義該類的對象m對其成員v進(jìn)行正確操作的是(17)。A.Mm;m.v=10 B.Mm;*m.v=10C.Mm;m.*v=10 D.Mm(10)若有“charp[]=”A\OBC\ODBC\n”;”,則strlen(p+4)的值是(18)。A.5 B.2 C.1 D.設(shè)函數(shù)聲明語句中的參數(shù)表為(int&a,int&b,intc),函數(shù)體中a,b,c三個變量的值都發(fā)生變化;主函數(shù)中調(diào)用此函數(shù)的實(shí)參表為(x,y,z),調(diào)用函數(shù)語句執(zhí)行后,以下敘述正確的是(19)。A.變量x和y的值發(fā)生變化B.變量x和y的值不發(fā)生變化C.變量x、y、z的值都發(fā)生變化D.只有變量z的值發(fā)生變化以下選取項正確的是(20)。A.char*a=”china”;等價于char*a;*a=”china”;B.charstr[]=”china”;等價于charstr[10];str[]={“china”};C.charc[4]=”abc”;d[4]=”abc”;等價于charc[4]=d[4]=”abc”;D.char*s=”china”;等價于char*s;s=”china”;以下選項中錯誤的是(21)。A.派生類可以繼承多個基類B.抽象類必須是虛基類C.派生類可以有多個虛基類D.可以有多個派生類繼承同一個基類若定義類A:classA{public:A(intx=0);…};執(zhí)行語句“Aa(4),b[3],*p[2];”,則自動調(diào)用該類的構(gòu)造函數(shù)的次數(shù)為(22)。A.6 B.4 C.3 D.1若有類定義classTerm{……public:intaddterm();};作用域運(yùn)算符::正確使用的是(23)。A)intTerm::addterm(){…}B)int::Termaddterm(){…}C)intTermaddterm::(){…}D)intTermaddterm()::{…}如果定義了字符變量ch,以下(24)語句可以實(shí)現(xiàn)將鍵入的字符(包括空格、回車及間隔符)賦予ch。A.cin>>chB.cin>>get(ch)C.cin.get(ch)D.ch=get()設(shè)有說明:staticinta[][2]={{1,2},{3,4,}};int*pa,(*pb)[2];則執(zhí)行語句pb=a;pa=pb[0];后,(*(pa+3))值是:(25)A.4B.2C.&a[1][0]D.&a[0][1]填空(15分)函數(shù)重載是指函數(shù)名相同,但函數(shù)的(1)或函數(shù)的(2)不同。在C++中,編譯預(yù)處理包含三方面的內(nèi)容,它們分別是包含文件、(3)和(4)。在C++中,運(yùn)算符的重載有兩種實(shí)現(xiàn)方法,一種是通過成員函數(shù)來實(shí)現(xiàn),另一種則是通過(5)來實(shí)現(xiàn)。當(dāng)一個類只能作為派生類的基類,不能用來說明這種類的對象時,這種類稱為(6)。在C++中函數(shù)的參數(shù)傳遞方式有三種:第一種是值傳遞;第二種是指針傳遞;第三種是(7)傳遞;設(shè)有語句”inta=5,b=7,c=15,d;d=b>a||(c=a+b)”;則c的值是(8)。任何一個類至少包含兩個構(gòu)造函數(shù),一個是缺省的構(gòu)造函數(shù)或用戶顯式定義的構(gòu)造函數(shù)。另一個是(9)。若有宏定義:#definX2#definY(n)((X+1)*n)則執(zhí)行語句:z=2*(X+Y(X+2));后,z的值是:(10)。C++允許用戶利用fstream類來定義非標(biāo)準(zhǔn)的文件對象。當(dāng)被定義的對象是調(diào)用重載運(yùn)算符”>>”或”<<”來讀取或?qū)懭胛募r,這個文件必定是__(11)__文件。設(shè)有說明語句:chars[]=”123\t456\00089”執(zhí)行以下兩個語句:cout<<*(p+5)<<’\n’;cout<<(p+5)<<’\n’;則輸出分別為(12)和(13)。在C++中,將多態(tài)性分為靜態(tài)多態(tài)性和動態(tài)多態(tài)性兩種。函數(shù)重載屬于(14),虛函數(shù)屬于(15)。閱讀程序,回答問題(總共45分)#include<iostream.h>classA{intx,y;public:A(inta,intb){x=a;y=b;cout<<"ABC"<<'\t';}A(){x=3;y=4;cout<<"CBA"<<'\n';}voidShow(){cout<<"x="<<x<<'\t'<<"y="<<y<<'\t';}~A(){cout<<"XYZ"<<'\n';}};voidmain(void){A*s1=newA(1,2),*s2=newA;s2->Show();deletes1;deletes2;}問題一:本程序的執(zhí)行后輸出是(1) (6分)問題二:如果將語句s2->Show()改為s1->Show(),執(zhí)行結(jié)果是(2)(6分)下面程序的輸出是_(3)_(1分)#include<iostream.h>fun3(intx){staticinta=3;a=x;return(a);}voidmain(){intk=2,m=1,n;n=fun3(k);n=fun3(m+n);cout<<n<<endl;}#include<iostream.h>classA{intx;public:voidShow(){cout<<"x="<<x<<'\t';}A(inta=10){x=a;cout<<"A"<<'\n';}~A(){cout<<"~A"<<'\n';}};voidmain(void){Af;f.Show();f=20;f.Show();}問題一:本程序共輸出(4)行,依次是(5)(5分)以下程序第一行輸出是__(6)__,第二行輸出是___(7)___(2分)#include<iostream.h>voidsub(intn){ intm,r; if(n==0) {cout<<"**"<<endl;return;} m=n/10;r=n%10; sub(m); cout<<"**"<<r; cout<<"++"<<r;}voidmain(){ inta=1234; sub(a); cout<<"++"<<endl;}#include"iostream.h"classA{public:virtualvoidfun(){cout<<"A::fun"<<'\t';}A(){fun();}voidg(){fun();}};classB:publicA{public:B(){fun();}voidfun(){cout<<"B::fun"<<'\t';}};voidmain(){Bb;b.g();}問題:程序的輸出依次是(8) (3分)寫出執(zhí)行下面小程序的輸出結(jié)果(9)。 (5分)voidac(floatx);bc();intm=10;voidmain(){inti,s=0;floatx;x=0.5;ac(x);for(i=0;i<4;i++){s=s+bc();cout<<``&``<<s<<endl;}}voidac(floatx){inti=0;floats=0;while(i<40){s=s+i*x;i=i+m;}cout<<x<`,`<<i<<`,`<<s<<endl;}bc(){staticints;s=s+2*m;cout<<``s=``<<s;returns;}下面程序的輸出是_(10)_。(3分)#include"iostream.h"#definePR(ar)cout<<ar<<'\t';voidmain(){ intj,a[]={1,3,5,7,9,11,13,15},*p=a+5; for(j=3;j;j--) { switch(j) { case1: case2:PR(*p++);break; case3:PR(*(--p)); default:; } } }設(shè)有以下說明,請根據(jù)說明語句的順序回答以下問題: (4分)1)constfloata=1;2)float&x=a;3)floatb[3],&t=b[2];4)int&top=*newint;5)constint*p=∑6)constchar*consts1;7)constfloat*consts2=b;8)constfloat*consts3=&b;9)enumgrade{math,eng,phy,com};10)enmgrade=math;11)gradesum=math;問題一:以上正確的說明語句是:(11)問題二:含有正確表示引用類型說明的語句是:(12)問題三:正確的常量說明語句是:(13)問題四:正確說明枚舉變量的語句是:(14)執(zhí)行下面的程序后,file1.txt中的內(nèi)容是(15) (1分)#include<fstream.h>chargetonech(chars[]){staticintk;returns[k++];}voidmain(){char*s=”AB123AB”;ofstreamf1(“file1.txt”);charch;while(ch=getchar(s))f1.put(ch);f1.close();}下面程序中編譯有錯誤的語句的標(biāo)號為(16)的語句 (2分)#include<iostream.h>classD{intx,y;public:D(inta,intb=0){x=a;y=b;cout<<"a"<<endl;}//AD(inta){x=a,y=0;cout<<"b"<<endl;}//BvoidSetXY(inta,intb){x=a,y=b;}//CintGetX(){returnx;}//DintGetY(){returny;}//E};voidmain(){Da(3,3);//FDb(9);//Gcout<<a.GetX()<<''<<b.GetX()<<endl;}其錯誤原因是:(17)。形、實(shí)參個數(shù)不一致。構(gòu)造函數(shù)沖突。缺少類型轉(zhuǎn)換構(gòu)造函數(shù)。缺少拷貝構(gòu)造函數(shù)。閱讀以下程序,完成以下選項(2分)#include<iostream.h>classtest03{intx,y;public:intright,bottom;test03(inta=10,intb=20){x=a;y=b;cout<<x<<'\t'<<y<<'\n';}test03(inta,intb){x=a;y=a-b;cout<<x<<'\t'<<y<<'\n';}};voidmain(void){test03a(20,10),b;該程序(18)有錯,因為對象a、b與構(gòu)造函數(shù)的形參同名有錯,因為對象b沒有對應(yīng)的缺省構(gòu)造函數(shù)可調(diào)有錯,因為構(gòu)造函數(shù)不符合重載規(guī)則正確,因為第一個構(gòu)造函數(shù)是缺省構(gòu)造函數(shù),第二個是帶參構(gòu)造函數(shù)。執(zhí)行結(jié)果為20101020在該程序中(19)將對象b寫成b()都是調(diào)用缺省構(gòu)造函數(shù)只有對象b改成b()才是調(diào)用缺省構(gòu)造函數(shù)將對象a寫成a(),對象b寫成b(20,10)才能正確調(diào)用以上說法都不正確完善程序(20分)函數(shù)featch_int(char*ps,intpi[])的功能是:將ps所指向的字符串中的連續(xù)數(shù)字作為一個整數(shù),依次取出整數(shù)并放到整形數(shù)組pi中,函數(shù)返回從字符串中取出的整數(shù)的個數(shù).主函數(shù)中完成字符串的輸入,并輸出提取的所有整數(shù)。例如:輸入的字符串:“sfs345fds456df56j”,則輸出:34545656#include<iostream.h>intfeatch_int(char*ps,intpi[]){ intlen=0; while(*ps) if(!(*ps>='0'&&*ps<='9'))(1); else{ intnum=0; while((2)){ num=num*10+*ps-'0'; ps++; } (3); len++; } return(4); }voidmain(){ charstr[300];intb[50],n,i; cout<<"請輸入一個含有數(shù)字的字符串:\n";cin.getline(str,200);n=featch_int((5)); cout<<"其中有"<<n<<"個整數(shù),它們分別是:\n"; for(i=0;i<n;i++){ cout<<b[i]<<'\t'; if((i+1)%5==0)cout<<'\n'; } coud<<endl;}已建立一條無序鏈表,head指向鏈?zhǔn)?,鏈表上結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)為StructNode{doublenum;Nodenext;};以下函數(shù)sort(Node*head)的功能是:將參數(shù)head所指向鏈表上的各個結(jié)點(diǎn),按num值升序排序,并返回排序后鏈表的鏈著指針。算法提示:先讓h指向空鏈,依次從head所指向的鏈表上取下一個結(jié)點(diǎn),然后將取下的結(jié)點(diǎn)插入到已排序的h所指向的鏈表上。#include<iostream.h>Node*sort(Node*head){ if(head==0)returnhead; Node*h,*p; h=0; while(head){ p=head; (6); Node*p1,*p2; if(h==0){ h=p; (7); } elseif((8)){ p->next=h; h=p; } else{ p2=p1=h; while(p2->next&&p2->num<p->num){ p1=p2; (9); } if((10)){ p2->next=p; p->nex=0; } } } returnh;}以下程序?qū)崿F(xiàn)一個由動態(tài)數(shù)組構(gòu)成的線性表的類,在該類的線性表中存放若干個實(shí)數(shù)。通過重載運(yùn)算符實(shí)現(xiàn)兩個線性對應(yīng)元素間的賦值,重載提取運(yùn)算符完成線性表的輸入,重載插入運(yùn)算符完成線性表的輸出。#include<iostream.h>classList{ intsize; double*list;public: List(int=1,double=0.0); ~List(){delete[]list;}; List&operator=(constList&); friendostream&operator<<(ostream&,List&); friendistream&operator>>(istream&,List&);};List::List(intsz,doublet){ size=sz; list=(11); for(inti=0;i<size;i++)list[i]=t;}List&List::operator=(constList&v){ if(&v!=this){ delete[]list; size=v.size; list=newdouble[size]; for(inti=0;i<size;i++)(12); } return*this;}(13)<<(ostream&os,List&v){ inti; for(i=0;i<v.size;i++){ os<<v.list[i]<<','; if((i+1)%8==0)os<<'\n'; } returnos;}(14)>>(istream&is,List&v){ inti; for(i=0;i<v.size;i++){ cout<<i<<":"; (15)>>v.list[i]; } returnis;}voidmain(){ Lista(4),b(4); cout<<"inputListb:\n"; cin>>b; cout<<"b:"<<b<<endl; a=b; cout<<"a:"<<a<<endl;}以下程序?qū)崿F(xiàn)一個簡化的字符串類。在類String中,定義了拷貝構(gòu)造函數(shù);重載的運(yùn)算符“+=”,實(shí)現(xiàn)了字符串類的復(fù)合賦值運(yùn)算。#include<iostream.h>#include<string.h>classString{protected: char*s;public: String(char*p=0){ if(p==0)s=0; else{ s=newchar[strlen(p)+1]; strcpy(s,p); } } String(constString&);//拷貝構(gòu)造函數(shù) ~String(){ if(s)delete[]s; } voidShow(){ cout<<s<<'\n'; } String&operator+=(constString&);};String::String((16)){ if(s1.s){ s=newchar[(17)]; strcpy(s,s1.s); } else s=0;}(18)operator+=(constString&s1){ if(s!=0||s1.s!=0){ char*p=s; s=newchar[(19)]; if(p){ strcpy(s,p); strcat(s,s1.s); } elsestrcpy(s,s1.s); if(p)delete[]p; } return(20);}voidmain(){ Strings1("C++programming"),s2("Students
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年城市房屋租賃合同樣本
- 幼兒園小班活動方案計劃
- 物流行業(yè)自動化控制手冊
- 農(nóng)業(yè)技術(shù)實(shí)踐與應(yīng)用試題及答案
- 《高三成績不穩(wěn)定,如何應(yīng)對》主題班會課件
- 人力資源行業(yè)招聘與選拔試題集
- 農(nóng)民手機(jī)應(yīng)用推廣指南
- 《學(xué)習(xí)未成年人保護(hù)法》課件-高一上學(xué)期法治教育主題班會
- 汽車機(jī)械維修技術(shù)技能測試題
- 廣東省揭陽市惠來縣第一中學(xué)2024-2025學(xué)年高二下學(xué)期第一次階段考試政治試題(原卷版+解析版)
- 駕駛員春季行車安全
- 北京理工大學(xué)《操作系統(tǒng)課程設(shè)計》2021-2022學(xué)年第一學(xué)期期末試卷
- 精神病學(xué)第九版
- 《中華人民共和國藥品管理法實(shí)施條例》
- DB11-T 2324-2024腳手架鋼板立網(wǎng)防護(hù)應(yīng)用技術(shù)規(guī)程
- JJF(京) 124-2024 智能電表電動自行車充電辨識模組校準(zhǔn)規(guī)范
- 2024年河南水利廳廳屬事業(yè)單位招考(第二批)易考易錯模擬試題(共500題)試卷后附參考答案
- 2022風(fēng)電機(jī)組吊裝施工組織設(shè)計
- 一例下肢靜脈血栓疑難病例護(hù)理討論1
- 護(hù)士中級職稱競聘述職課件
- 教育部《中小學(xué)德育工作指南》-道德修養(yǎng)手冊
評論
0/150
提交評論