版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
大學(xué)計算機應(yīng)用基礎(chǔ)(面向?qū)ο蟛糠郑?fù)習(xí)題一、選擇題4.關(guān)于成員函數(shù),以下敘述中不正確的是_A_____?A.成員函數(shù)一定是內(nèi)聯(lián)函數(shù)B.成員函數(shù)可以重載C.成員函數(shù)的參數(shù)可以設(shè)置默認值D.成員函數(shù)可以是另一個類的友元函數(shù)5.下列關(guān)于析構(gòu)函數(shù)說法正確的是__D______。A.析構(gòu)函數(shù)可以有參數(shù)。C.析構(gòu)函數(shù)一定被繼承。B.析構(gòu)函數(shù)可以重載。D.析構(gòu)函數(shù)無返回值。6.下列對友元的描述中,正確的是_D____。A.友元可以在類外聲明和定義C.友元不能訪問類中的保護成員B.友元降低了程序的運行效率D.友元破壞了類的封裝性7.下面對靜態(tài)成員的描述中,錯誤的是__C__。A.靜態(tài)成員的提出是為了解決數(shù)據(jù)共享問題B.靜態(tài)數(shù)據(jù)成員的初始化在類體外進行C.類的不同對象有不同的靜態(tài)數(shù)據(jù)成員值D.靜態(tài)成員函數(shù)可以直接訪問類中的靜態(tài)數(shù)據(jù)成員8.下列對常量的定義中,錯誤的是C_____。A.intconstsize=10;C.voidconstprint();B.char*constp="GoodLuck";D.constMyClassobj(10,10);9.若有如下函數(shù)聲明:voidFun(intx);,則下列__B___能與該函數(shù)進行重載。A.voidFun(inty);C.intFun(intx);B.voidFun(intx,inty='1');D.voidFun(int)const;10.為了提高程序的運行速度,可將不太復(fù)雜的功能用函數(shù)實現(xiàn),此函數(shù)應(yīng)選擇_A___。A.內(nèi)聯(lián)函數(shù)B.重載函數(shù)C.遞歸函數(shù)D.函數(shù)模板11.派生類的對象對它的基類成員中什么是可訪問的(A,C)。A.公有繼承的公有成員C.公有繼承的保護成員B.公有繼承的私有成員D.私有繼承的公有成員12、____D__不是構(gòu)造函數(shù)的特征。A.構(gòu)造函數(shù)的函數(shù)名與本類類名相同B.構(gòu)造函數(shù)可以重載C.構(gòu)造函數(shù)可以設(shè)置缺省形參值D.構(gòu)造函數(shù)必須指明返回類型13、下列函數(shù)中,__A____不是類的成員函數(shù)。A.友元函數(shù)B.拷貝構(gòu)造函數(shù)C.析構(gòu)函數(shù)D.構(gòu)造函數(shù)14、若有如下函數(shù)聲明:voidFun(intx);,則下列_B____能與該函數(shù)進行重載。A.voidFun(inty);C.intFun(intx);B.voidFun(intx,inty='1');D.voidFun(int)const;15、若派生類的繼承方式為私有,則派生類自有的成員函數(shù)不能對基類的_B_______直接訪問。A.公有成員B、私有成員C、保護成員D、全部成員;16、下列對常量的定義中,錯誤的是__C___。A.intconstsize=10;C.voidconstprint();B.char*constp="GoodLuck";D.constMyClassobj(10,10);17、設(shè)置虛基類的目的是_B_______。A.簡化程序C.實現(xiàn)多態(tài)B.消除二義性D.減少目標(biāo)代碼18、已知類A,并staticinta為其公有成員,下面初始化方法正確的是__D______。A.inta=0;B.a=0;D.intA::a=0;C.A(…):a(0);19、下列運算符中,不能重載的運算符是____A____。A.::B.[]C.&&D.>>20、在建立派生類對象時,構(gòu)造函數(shù)的執(zhí)行方式為:CA.先執(zhí)行派生類構(gòu)造函數(shù)后執(zhí)行基類構(gòu)造函數(shù)B.只執(zhí)行派生類構(gòu)造函數(shù)C.先執(zhí)行基類構(gòu)造函數(shù)后執(zhí)行派生類構(gòu)造函數(shù)D.僅執(zhí)行基類構(gòu)造函數(shù)21、為了提高程序的運行速度,可將不太復(fù)雜的功能用__A___函數(shù)實現(xiàn)。A.內(nèi)聯(lián)函數(shù)B.重載函數(shù)C.遞歸函數(shù)D.函數(shù)模板22、派生類中,重新定義基類的虛函數(shù)時,虛函數(shù)的_D______必須保持一致。A.參數(shù)個數(shù)C.返回值B.參數(shù)類型D.參數(shù)個數(shù)、參數(shù)類型和返回值23.當(dāng)派生類中有和基類一樣名字的成員時,一般來說_B____。A.將產(chǎn)生二義性C.是不能允許的B.派生類的同名成員將覆蓋基類的成員D.基類的同名成員將覆蓋派生類的成員24.如果是類B在類A的基礎(chǔ)上構(gòu)造,那么稱_B____。A.類A為基類或派生類,類B為子類或父類B.類A為基類、父類,類B為派生類或子類C.類A為派生類,類B為基類D.類A為派生類或子類,類B為基類、父類25.多繼承派生類構(gòu)造函數(shù)構(gòu)造對象時,__C___最先被調(diào)用。A.虛函數(shù)的構(gòu)造函數(shù)B.派生類自己的構(gòu)造函數(shù)C.非虛基類的構(gòu)造函數(shù)D.派生類中子對象類的構(gòu)造函數(shù)二、程序填空1、把一串字符中的小寫字母轉(zhuǎn)換為對應(yīng)的大寫字母。#include<stdio.h>charfun(charc){if(c>='a'&&c<='z')__c=c+32_____________;returnc;}main(){charc;c=getchar();while(c!='\n'){c=_fun(c)______________;putchar(c);c=_getchar(c)______________;}}2、友元應(yīng)用#include"iostream.h"classstudent{public:intNo;char*Name;____student()______________;~student();_____friend_____________voidf_age(intag,student&p);private:intage;};student::student(intn,char*str){No=n;Name=str;age=18;}student::~student(){cout<<"學(xué)號"<<No<<endl;cout<<"姓名"<<Name<<endl;cout<<"年齡"<<age<<endl;}voidf_age(intag,student&p){p.age=ag;cout<<"友元年齡"<<p.age<<endl;}voidmain(){studentwang(5074401,"wang");f_age(30,wang);}3、輸出一個點#include"iostream.h"classpoint{public:point(intx,inty);~point(){cout<<X<<","<<Y<<endl;}private:intX;intY;};point::point(intx,inty){____X=x______________;____Y=y______________;}voidmain(){pointp1(10,10);}4、求出圓的面積:#include<iostream.h>classPoint{public:Point(doublem,doublen);virtualvoidArea();private:doublex,y;};Point::Point(doublem,doublen){____x=m,y=n________________}voidPoint::Area(){cout<<"Theareais0"<<endl;}classCircle:publicPoint{public:Circle()____________________;voidArea();private:doubler;};Circle::Circle(doublem,doublen,doublei):Point(m,n)_________{r=i;}voidCircle::Area(){doublea=__3.14*r*r_____________;cout<<"Theareaofthecircleis:"<<a<<endl;}voidmain(){Point*pt;Circlec(1,2,3);__pt=&c_____________;pt->Area();}5、下列程序執(zhí)行后的輸出結(jié)果是B0D00B1D23~D~B~D~B,請將下列程序補充完整。classBase{public:Base(inti=0){x=i;cout<<'B'<<x<<'';}~Base(){cout<<"~B"<<x<<'';}private:intx;};classDerived:publicBase{inty,z;public:__Derived(inti,inta=0,intb=0):Base(i){y=a;z=b;cout<<”D”<<y<<z<<’‘;}_____________//Constructor_~Derived(){cout<<”~D”<<’‘;}______________//Destructor};voidmain(){Derivedobj1;Derivedobj2(1,2,3);}5、函數(shù)重載#include<iostream.h>intf_add(_inti,intj______________){returni+j;}doublef_add(_doublei,doublej______________){returni+j;}intf_add(inti,intj,intk){returni+f_add(__intj,intk___________);}voidmain(){inta=1,b=2,c=3;doublex=3.5,y=4.5;inte,f;doublez;e=f_add(a,b);f=f_add(a,b,c);z=f_add(x,y);cout<<a<<"+"<<b<<"="<<e<<endl;cout<<a<<"+"<<b<<"+"<<c<<"="<<f<<endl;cout<<x<<"+"<<y<<"="<<z<<endl;}三、寫出下列程序的運行結(jié)果1.閱讀程序,輸入如下數(shù)據(jù):10052,寫出運行結(jié)果。#include"stdio.h"main(){longm,p,q,t;p=q=0;scanf("%ld",&m);do{t=m%10;if(t==0)p++;elseif(q<=t)q=t;m/=10;}while(m);printf("Count=%ld,Max=%ld\n",p,q);}2、閱讀程序,寫出運行結(jié)果#include"iostream.h"classtest{private:intnum;floatfl;public:test();intgetint(){returnnum;}floatgetfloat(){returnfl;}~test();};test::test(){cout<<"Initalizingdefault"<<endl;num=1;fl=1.2;}test::~test(){cout<<"Desdtructorisactive"<<endl;}voidmain(){testarray[2];cout<<array[1].getint()<<""<<array[1].getfloat()<<endl;}3、閱讀程序,寫出運行結(jié)果。#include<iostream.h>classA{public:A(){cout<<"調(diào)用的無參構(gòu)造函數(shù)"<<endl;}A(intx){a1=x;cout<<"調(diào)用的有參構(gòu)造函數(shù)"<<endl;}A(A&p){a1=p.a1;cout<<"調(diào)用的復(fù)制構(gòu)造函數(shù)"<<endl;}voidadd(Aq){Atemp;temp.a1=a1+q.a1;cout<<"結(jié)果為:"<<temp.a1<<endl;}private:inta1;};main(){AA1(1),A2(2);A1.add(A2);}4、分析下列程序的運行結(jié)果#include<iostream.h>classadd{public:virtualvoidsm()=0;virtualvoiddisp(){}};classadd1:publicadd{private:intm1,n1;public:add1(inta,intb):m1(a),n1(b){}voidsm(){m1+=--n1;n1--;}voiddisp(){cout<<"m1="<<m1<<""<<"n1="<<n1<<endl;}};voidmain(){add1a(4,6);add*p=&a;p->sm();p->disp();}5、閱讀程序,寫出運行結(jié)果#include<iostream.h>classA{public:A(inti){a=i;cout<<"ConstructorA."<<endl;}~A(){cout<<"DestructorA."<<endl;}voidPrint(){cout<<a<<endl;}private:inta;};classB:publicA{public:B(inti,intj):A(i){b=j;cout<<"ConstructorB."<<endl;}~B(){cout<<"DestructorB."<<endl;}voidPrint(){A::Print();cout<<b<<endl;}private:intb;};classC:publicB{public:C(inti,intj,intk):B(i,j),c(k){cout<<"ConstructorC."<<endl;}~C(){cout<<"DestructorC."<<endl;}voidPrint(){A::Print();B::Print();cout<<c<<endl;}private:intc;};voidmain(){Cc1(1,2,3);c1.Print();}6、分析下列程序,寫出運行結(jié)果#include<iostream.h>classTest{public:Test(doublem,doublen,doubled):p(d){x=m;y=n;}voidShow();voidShow()const;private:doublex,y;constdoublep;};voidTest::Show(){cout<<x<<","<<y<<endl;cout<<"p="<<p<<endl;}voidTest::Show()const{cout<<x<<","<<y<<"const"<<endl;cout<<"p="<<p<<"const"<<endl;}voidmain(){Testa(8.9,2.5,3.1416);a.Show();constTestb(2.5,8.9,3.14);b.Show();}7、分析下列程序,寫出運行結(jié)果#include<iostream.h>classSample{intx,y;public:Sample(){x=y=0;}Sample(inta,intb){x=a;y=b;}~Sample(){if(x==y)cout<<"x=y"<<endl;elsecout<<"x!=y"<<endl;}voiddisp(){cout<<"x="<<x<<",y="<<y<<endl;}};voidmain(){Samples1,s2(2,3);s1.disp();s2.disp();}8、分析下列程序,寫出運行結(jié)果#include<iostream.h>classPoint{public:Point(doublem,doublen);virtualvoidArea();private:doublex,y;};Point::Point(doublem,doublen){x=m;y=n;}voidPoint::Area(){cout<<”Theareais0”<<endl;}classCircle:publicPoint{public:Circle(doublem,doublen,doublei);//聲明構(gòu)造函數(shù)voidArea();private:doubler;};Circle::Circle(doublem,doublen,doublei):Point(m,n){r=i;}voidCircle::Area(){doublea=3.14*r*r;cout<<”Theareaofthecircleis:”<<a<<endl;}voidmain(){Point*pt;Circlec(4,5,6);pt=&c;pt->Area();}四、編寫程序1、已知數(shù)列:編一程序,求其前十項的和。(畫出N~S流程圖)#include<iostream>usingnamespacestd;intmain(){doublesum,m,n;inti;sum=1;m=1;n=1;for(i=1;i<=9;i++){n=n+2;if(i%2!=0)m=-(1/n);elsem=1/n;sum+=m;}cout<<"前十項的和為:"<<sum<<endl;return0;}2、編寫一函數(shù)計算n!,調(diào)用該函數(shù)計算sinx的近似值,要求誤差小于,其中:#include<iostream>#include<math.h>usingnamespacestd;intjiecheng(intn){intsum=1,i;for(i=1;i<=n;i++){sum=sum*i;}returnsum;}doublemain(){doublesinx=0,x;intn,i;cout<<"請輸入x:";cin>>x;cout<<"請輸入n:";cin>>n;for(i=1;i<=n;i++){sinx=pow((-1),(i-1))*pow(x,(2i-1))/jiecheng(2i-1);}cout<<"sinx=";printf("%10.4\n",sinx);return0;}3、定義一復(fù)數(shù)類,利用運算符重載完成復(fù)數(shù)相加。主函數(shù)及運行結(jié)果如下:(注意:實部為real;虛部為imag,為私有數(shù)據(jù)成員)#include<iostream.h>classComplex{public:Complex(){real=0;Image=0;}Complex(doubler,doublei):real(r),imag(i){}Complexoperator+(Complexb&c2);{return(real+c2.real,imag+c2.imag)}Voidput(){cout<<”(“<<real<<”,”<<imag<<”i)”<<endl;}private:doubleraeal;doubleimage;};voidmain(){Complexc1(1,2),c2(3,4),c3;c3=c1+c2;c3.put();}4、編寫一函數(shù)把字串中與某字符相同的字符刪除,主函數(shù)如下:#include<iostream.h>#include<stdio.h>main(){char*str=newchar[];charc;gets(str);cin>>c;fun(str,c);puts(str);}voidfun(str,c){while(str[]!=’\0’){if(strcmp(str[],c)==0)deletestr[];}}5、已知三角形的三遍,在該三角形的基礎(chǔ)上拉伸出高為H的三棱柱,編寫三棱柱派生類,求三棱柱的體積。三角形類描述如下:classTriangle{public:Triangle(floatx,floaty,floatz){a=x;b=y;c=z;}voidArea(){floatt;t=(a+b+c)/2;area=sqrt(t*(t-a)*(t-b)*(t-c));}floatGet_area()voidShow()private:{returnarea;}{cout<<"三角形的面積為:"<<area<<endl;}floata,b,c;floatarea;};classColumn:publicTriangle{}主函數(shù)如下:main(){TriangleT1(3,4,5);T1.Area();T1.Show();ColumnC1(3,4,5,10);C1.Volume();C1.Show();}答案:#include<iostream>#include<math.h>usingnamespacestd;classTriangle{public:Triangle(floatx,floaty,floatz){a=x;b=y;c=z;}voidArea(){floatt;t=(a+b+c)/2;area=sqr
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年學(xué)校心理咨詢室管理制度范文(三篇)
- 2024年幼兒園保教計劃范本(四篇)
- 2024年培訓(xùn)期間的安全管理制度樣本(四篇)
- 2024年國培計劃個人研修計劃范例(七篇)
- 2024年屋頂廣告牌租賃合同樣本(四篇)
- 2024年安全生產(chǎn)主要負責(zé)人管理職責(zé)例文(五篇)
- 【《華帝廚電公司的營運資金管理研究文獻綜述》2500字】
- 數(shù)控實習(xí)周記(5篇)
- 2024年工廠門衛(wèi)崗位職責(zé)范本(三篇)
- 2024年委托擔(dān)保合同經(jīng)典版(三篇)
- 高級母嬰護理師測評考試題及答案
- 房建工程竣工資料監(jiān)理審查報告
- 膽囊癌最新課件
- 一年級趣味數(shù)學(xué)小故事
- 《創(chuàng)新方法TRIZ理論入門》課件04因果分析
- 《形式邏輯》
- 塑料袋的警告語(歐洲)
- 建筑施工現(xiàn)場安全警示牌標(biāo)示(標(biāo)志圖片)
- 電加熱器選型計算
- 2016雕塑工程計價定額(共10頁)
- 液壓油缸項目建設(shè)用地申請報告(范文參考)
評論
0/150
提交評論