C全國(guó)高等教育自學(xué)考試試卷實(shí)用_第1頁(yè)
C全國(guó)高等教育自學(xué)考試試卷實(shí)用_第2頁(yè)
C全國(guó)高等教育自學(xué)考試試卷實(shí)用_第3頁(yè)
C全國(guó)高等教育自學(xué)考試試卷實(shí)用_第4頁(yè)
C全國(guó)高等教育自學(xué)考試試卷實(shí)用_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

會(huì)計(jì)學(xué)1C全國(guó)高等教育自學(xué)考試試卷實(shí)用25.在下面函數(shù)模板定義中不正確的是(

A. template<classQ> B.template<classQ>

QF(Qx) QF(Qx) {returnQ+x;} {returnx+x;}

C. template<classT> D.template<classT>

TF(Tx) TF(Tx)

{returnx*x;} {returnx>1;}6.語(yǔ)句ofstreamf(“ab.dat”,ios::app|ios::binary);的功能是建立流對(duì)象f,試圖打開(kāi)文件ab.dat并與之連接,并且()A.若文件存在,將文件寫指針定位于文件尾;若文件不存在,建立一個(gè)新文件

B.若文件存在,將其置為空文件;若文件不存在,打開(kāi)失敗

C.若文件存在,將文件寫指針定位于文件首;若文件不存在,建立一個(gè)新文件

D.若文件存在,打開(kāi)失敗;若文件不存在,建立一個(gè)新文件AA第1頁(yè)/共22頁(yè)37.下面說(shuō)法正確的是()A.內(nèi)聯(lián)函數(shù)在運(yùn)行時(shí)是將該函數(shù)的目標(biāo)代碼插入每個(gè)調(diào)用該函數(shù)的地方

B.內(nèi)聯(lián)函數(shù)在編譯時(shí)是將該函數(shù)的目標(biāo)代碼插入每個(gè)調(diào)用該函數(shù)的地方

C.類的內(nèi)聯(lián)函數(shù)必須在類體內(nèi)定義

D.類的內(nèi)聯(lián)函數(shù)必須在類體外通過(guò)加關(guān)鍵字inline定義8.可以用p.a的形式訪問(wèn)派生類對(duì)象p的基類成員a,其中a是()A.私有繼承的公有成員 B.公有繼承的私有成員

C.公有繼承的保護(hù)成員 D.公有繼承的公有成員9.在公有派生情況下,派生類對(duì)象和基類對(duì)象的關(guān)系,不正確的是()A.派生類的對(duì)象可以賦給基類的對(duì)象

B.派生類的對(duì)象可以初始化基類的引用

C.派生類的對(duì)象可以直接訪問(wèn)基類中的成員

D.派生類的對(duì)象的地址可以賦給指向基類的指針

BDC第2頁(yè)/共22頁(yè)410.對(duì)于類定義classA{public: virtualvoidfunc1(){} voidfunc2(){}};classB:publicA{public: voidfunc1() { cout<<″classBfunc1″<<end1;} virtualvoidfunc2() { cout<<″classBfunc2″<<end1;}};下面正確的敘述是()A.A::func2()和B::func1()都是虛函數(shù)B.A::func2()和B::func1()都不是虛函數(shù)C.B::func1()是虛函數(shù),而A::func2()不是虛函數(shù)D.B::func1()不是虛函數(shù),而A::func2()是虛函數(shù)C第3頁(yè)/共22頁(yè)5二、填空題(每小題2分,共20分)

11.定義類的動(dòng)態(tài)對(duì)象數(shù)組時(shí),系統(tǒng)只能夠自動(dòng)調(diào)用該類的_________構(gòu)造函數(shù)對(duì)其進(jìn)行初始化。12.在C++程序設(shè)計(jì)中,建立繼承關(guān)系倒掛的樹(shù)應(yīng)使用_________繼承。13.表達(dá)式cout<<endl還可表示為_(kāi)________。14.基類的公有成員在派生類中的訪問(wèn)權(quán)限由_________決定。15.C++支持的兩種多態(tài)性分別是_______多態(tài)性和_______多態(tài)性。無(wú)參單cout<<‘\n’訪問(wèn)控制編譯運(yùn)行第4頁(yè)/共22頁(yè)616.C++中語(yǔ)句constchar*constp=″hello″;所定義的指針p和它所指的內(nèi)容都不能被_________。

17.假定AB為一個(gè)類,則語(yǔ)句AB(AB&x);為該類_______構(gòu)造函數(shù)的原型說(shuō)明。18.將關(guān)鍵字const寫在成員函數(shù)的________和_________之間時(shí),所修飾的是this指針。19.在C++中,訪問(wèn)一個(gè)對(duì)象的成員所用的運(yùn)算符是_____,訪問(wèn)一個(gè)指針?biāo)赶虻膶?duì)象的成員所用的運(yùn)算符是________。

20.派生類從一個(gè)或多個(gè)以前定義的該類的_________繼承數(shù)據(jù)和函數(shù)。改變復(fù)制函數(shù)頭函數(shù)體.->基類第5頁(yè)/共22頁(yè)721.指出下面程序段中的錯(cuò)誤,并說(shuō)明出錯(cuò)原因。classA{ inta,b;public:

A(intaa,intbb){a=aa;b=bb;}};Ax(2,3),y(4);22.指出并改正下面利用類模板的對(duì)象定義中的錯(cuò)誤。template<classT>classTany{ Tx,y;public: Tany(Ta,Tb){x=a,y=b;} Tsum(){returnx+y;}};Tany(int)obj(10,100);三、改錯(cuò)題(每小題2分,共10分)錯(cuò)誤原因:沒(méi)有單參數(shù)的構(gòu)造函數(shù)Tany<int>obj(10,100);第6頁(yè)/共22頁(yè)823.指出下面程序段中的錯(cuò)誤,并說(shuō)明出錯(cuò)原因。classone{private: inta;public: voidfunc(two&);};classtwo{private: intb; friendvoidone::func(two&);};voidone::func(two&r){ a=r.b; }錯(cuò)誤原因:沒(méi)有對(duì)類two說(shuō)明改正:在類one的定義前增加說(shuō)明。

classtwo;第7頁(yè)/共22頁(yè)924.指出下面程序段中的錯(cuò)誤,并說(shuō)明出錯(cuò)原因。#include<iostream.h>classA{public: voidfun(){cout<<″a.fun″<<endl;}};classB{public: voidfun(){cout<<″b.fun″<<endl;} voidgun(){cout<<″b.gun″<<endl;}};classC:publicA,publicB{ private:intb; public: voidgun(){cout<<″c.gun″<<endl;} voidhun(){fun();}};錯(cuò)誤:類C中的函數(shù)hun調(diào)用fun時(shí)出現(xiàn)二義性。第8頁(yè)/共22頁(yè)1025.指出下面程序段中的錯(cuò)誤,并說(shuō)明出錯(cuò)原因。classLocation{ intX,Y=20;protected: intzeroX,zeroY; intSetZero(intZeroX,intZeroY);private: intlength,height;public: floatradius; voidinit(intinitX,intinitY); intGetX(); intGetY();};intX,Y=20;出錯(cuò)錯(cuò)誤原因:定義類時(shí)類中數(shù)據(jù)成員不能賦值。第9頁(yè)/共22頁(yè)11四、完成程序題(每小題4分,共20分)

26.在下面橫線處填上適當(dāng)字句,完成類中成員函數(shù)的定義。classA{ int*a;public: A(intaa=0) {a=______________; //用aa初始化a所指向的動(dòng)態(tài)對(duì)象

} ~A() {_________;}//釋放動(dòng)態(tài)存儲(chǔ)空間};newint(aa)deletea第10頁(yè)/共22頁(yè)1227.下面是一個(gè)函數(shù)模板,用于計(jì)算兩個(gè)向量的和。#include<iostream.h>template<classT>T*f(T*a,T*b,intn){ T*c=_____________; for(inti=0;i<n;i++) c[i]=_________; returnc;}voidmain(){ inta[5]={1,2,3,4,5},b[5]={10,20,30,40},*p; p=f(a,b,5); for(inti=0;i<5;i++) cout<<p[i]<<endl;}newint[n]a[i]+b[i]第11頁(yè)/共22頁(yè)1328.下面是一個(gè)用戶口令檢查程序,填上適當(dāng)語(yǔ)句完成程序功能。#include<iostream.h>#include<string.h>___________________________ //定義由PASS指針?biāo)赶虻目诹顆olleh。voidmain(){ charuser[10];//用于存放輸入的口令

cout<<″pleaseinputyourpassword:″<<endl; __________________//輸入口令

if((strcmp(user,PASS))==0) cout<<″yourpasswordiscorrect″<<endl; else cout<<″yourpasswordiserror″<<endl;}constchar*PASS=“wollen”;cin>>user;第12頁(yè)/共22頁(yè)1429.下面是類fraction(分?jǐn)?shù))的定義,其中重載的運(yùn)算符<<以分?jǐn)?shù)形式輸出結(jié)果,例如將三分之二輸出為2/3。在橫線處填上適當(dāng)字句。classfraction{ intden;//分子

intnum;//分母

friendostream&operator<<(ostream&,fraction); …};ostream&operator<<(ostream&os,fractionfr){ ________________________; return_________;}os<<fr.den<<‘/’<<fr.numos第13頁(yè)/共22頁(yè)1530.在橫線處填上適當(dāng)?shù)淖志洌蛊漭敵鼋Y(jié)果為0,56,56。#include<iostream.h>classbase{public: ______________func(){return0;}};classderived:publicbase{public: inta,b,c; _________setValue(intx,inty,intz){a=x;b=y;c=z;} intfunc(){return(a+b)*c;}};voidmain(){ baseb; derivedd; cout<<b.func()<<

","

; d.setValue(3,5,7); cout<<d.func()<<

","

; base&pb=d; cout<<pb.func()<<endl;}virtualintvoid第14頁(yè)/共22頁(yè)16五、程序分析題(每小題5分,共30分)

31.給出下面程序的輸出結(jié)果。#include<iostream.h>voidmain(){ int*a; int*&p=a; intb=10; p=&b; cout<<*a;}輸出結(jié)果為:10第15頁(yè)/共22頁(yè)1732.給出下面程序的輸出結(jié)果。#include<iostream.h>template<classT>Tf(T*a,T*b,intn){ Ts=(T)0; for(inti=0;i<n;i++) s+=a[i]*b[i];

returns;}voidmain(){ doublec[5]={1.1,2.2,3.3,4.4,5.5}; doubled[5]={10.0,100.0,1000.0}; cout<<f(c,d,5)<<endl;}輸出結(jié)果為:3531第16頁(yè)/共22頁(yè)18給出下面程序的輸出結(jié)果。#include<iomanip.h>voidmain(){ for(inti=0;i<4;i++) cout<<endl<<setfill(′′)<<setw(4-i)<<′0′<<setfill(′*′)<<setw(i+i)<<(i>0?′0′:′′);}輸出結(jié)果為:

00*00***00*****0第17頁(yè)/共22頁(yè)1934.運(yùn)行下面的程序,寫出當(dāng)輸入25,60時(shí)的輸出結(jié)果。#include<iostream.h>classgoods{private: staticinttotalWeight;intweight;public: goods(intw) { weigh=w;totalWeight+=w;} goods(goods&gd) { weight=gd.weight;totalWeight+=weight;} ~goods(){ totalWeight-=weight;} intgetwg(){ returnweight;} staticintgetTotal(){returntotalWeight;}};intgoods::totalWeight=0;第18頁(yè)/共22頁(yè)20voidmain(){ intw; cout<<″Theinitialweightofgoods:″ <<goods::getTotal()<<endl; cin>>w;//輸入25 goodsg1(w); cin>>w;//輸入60 goodsg2(w); cout<<″Thetotalweightofgoods:″ <<goods::getTotal()<<endl;}輸出結(jié)果為:Theinitialweightofgoods:0Thetotalweightofgoods:85第19頁(yè)/共22頁(yè)2135.寫出輸出結(jié)

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論