c++类与对象练习题

合集下载

C++面向对象程序设计复习练习试题带答案(1)

C++面向对象程序设计复习练习试题带答案(1)

C++面向对象程序设计模拟试题一一、单项选择题(本大题共10小题,每小题2分,共201.说明虚函数的关键字是()。

A. inlinevirtual C. define D. static2.在每个C++程序中都必须包含有这样一个函数,该函数的函数名为()。

A. mainB. MAINC. nameD. function 3.cout是某个类的标准对象的引用,该类是()。

A. ostream B. istream C. stdout D. stdin4.如果在类外有函数调用CPoint::func();则函数func()是类CPoint的()。

A. 私有静态成员函数B. 公有非静态成员函数C. 公有静态成员函数 B. 友元函数5. 如果class类中的所有成员在定义时都没有使用关键字public、private或protected,则所有成员缺省定义为()。

A. publicB. protectedC. private D.static6.一个类的所有对象共享的是()。

A. 私有数据成员 B. 公有数据成员 C. 保护数据成员 D. 静态数据成员7.动态联编所支持的多态性称为()。

A. 虚函数 B. 继承C. 编译时多态性D. 运行时多态性8.定义类模板时要使用关键字()。

A. const B. newC. deleteD. template9.对虚基类的定义()。

A. 不需要使用虚函数 B. 必须使用虚函数C. 必须使用privatD. 必须使用public10.类型转换函数()。

A. 不能带有参数 B. 只能带一个参数 C. 只能带2个参数D. 只能带3个参数二、判断正误题(本大题共6小题,每小题2分,共12分)1.虚函数在基类和派生类之间定义,且要求函数原型完全一致。

()2.抽象类可以用来直接创建对象。

()3.内联函数中可以出现递归语句。

()4.模板类与类模板的意义完全相同。

()5.常对象只能调用常成员函数。

类和对象练习题

类和对象练习题

类和对象一、选择题1、下面对方法的作用描述不正确的是:( d )A、使程序结构清晰B、功能复用C、代码简洁D、重复代码2、方法内定义的变量:( b )A 、一定在方法内所有位置可见B、可能在方法内的局部位置可见C、在方法外可以使用D、在方法外可见3、方法的形参:(a)A、可以没有B、至少有一个C、必须定义多个形参D、只能是简单变量4、方法的调用:(c)A、必须是一条完整的语句B、只能是一个表达式C、可能是语句,也可能是表达式D、必须提供实际参数5、return 语句:( d)A、不能用来返回对象B、只可以返回数值C、方法都必须含有D、一个方法中可以有多个return 语句6、void 的含义:(d)A、方法体为空B、方法体没有意义C、定义方法时必须使用D、方法没有返回值7、main()方法的返回类型是:( c )A 、boolean B、int C、void D、static8、方法重载所涉及的方法:( a )A、有相同的名字B、参数个数必须不同C、参数类型必须不同D、返回类型必须不同9、下面关于类和对象之间关系的描述,正确的是( c )A、联接关系B、包含关系C、具体与抽象的关系D、类是对象的具体化10、下面关于java中类的说法哪个是不正确的( c )A、类体中只能有变量定义和成员方法的定义,不能有其他语句。

B、构造方法是类中的特殊方法。

C、类一定要声明为public的,才可以执行。

D、一个java文件中可以有多个class定义。

11、下列哪个类声明是正确的( d)A、public void H1{…} B 、public class Move(){…}C、public class void number{}D、public class Car{…}12、下面的方法声明中,哪个是正确的(c)A、public class methodName(){}B、public void int methodName(){}C、public void methodName(){}D、public void methodName{}13、下述哪些说法是不正确的?( b )A、实例变量是类的成员变量B、实例变量是用static关键字声明的C、方法变量在方法执行时创建D、方法变量在使用之前必须初始化14、下面对构造方法的描述不正确是( b)。

C++实验二类与对象(附答案)

C++实验二类与对象(附答案)

C++实验二类与对象(附答案)实验二类与对象实验目的和要求1.掌握类、类的数据成员、类的成员函数的定义方式。

2.理解类成员的访问控制方式。

3.掌握对象的定义和操作对象的方法。

4.理解构造函数和析构函数的定义与执行过程。

5.掌握重载构造函数的方法。

6.了解拷贝构造函数的定义方法。

实验容1.下面程序中有错,在不删除和增加代码行的情况下,改正错误语句,使其正确运行。

#includeclass Aa{public:Aa(int i=0){a=i;cout<<"Constructor "<<a<<endl;< p="">}~Aa(){cout<<"Destructor "<<a<<endl;< p="">}void print(){cout<<a<<endl;< p="">}private:int a;};int main(){Aa al(1),a2(2);al.print();cout<<a2.a<<endl;< p="">return 0;}2.检查下面的程序,找出其中的错误,并改正。

然后上机调试,使程序能正常运行。

(1)#includeclass Date{void set_date();void show_date();int year;int month;int day;};Date d;int main(){set_date();show_date();}void set_date(){cin>>d.year;cin>>d.month;cin>>d.day;}void show_date(){cout<<d.year<<' '<<d.day<<=""> (2)#includeclass A{public:void A(int i=0){m=i;}void show(){cout<<m<<endl;< p="">}void ~A(){}private:int m;};int main(){A a(5);a.m+=10;a.show();return 0;}(3)#include class X {private:int a=0;int &bvoid setA(int i) {a=i;}X(int i){a=i;}public:int X(){a=b=0;}X(int i,int j) {a=i;b=j;}void setC(int k) {c=c+k;}};void main(){X x1;X x2(2);X x3(1,2);x1.setA(3);}3.调试下列程序。

类图与对象图习题

类图与对象图习题
答:见图2。 3.宾馆客房业务管理提供客房预订、预订变更、客房入住、退房结帐、旅客信息 查询几个方面的功能。订房人可以通过电话、短信、网络或面对面等方式预定客房。 允许预定人根据自己情况的变化更改预定信息。旅客入住客房前需要出示证件并登记,
2
大量名纳%义税以对人上万外游以元经纳离大挂,营税于家靠2,人查征0共经1并单询管5着同营年向位分范这探为1报被2-析围一87讨主告挂流月户、之系。, 靠域实,下外列 挂人综现小户。问 靠交上合税规原调以题一人通缴治款模则查X对、(运道管X理2企.走X.2.县X车输护理6实业X等 体1访X万0为辆县业岸费施2(县级 布师合的元2全例所对是工。户方三交: 置专治方;部,有交国是程 ,案)通X与业理法我为截人通X民学. 客设监运、措.论的。.县准道至)输经9校1运计测输教施文(一任并、交考路2,运济实3范业育设0五、务对纳通户工证作对1将业的现围税以计5)高目调税业,种号者年国车税传社与收及.林提校标查.人主货:.6内辆收统会7月时征为研草出行与的户要运X(培的登政行功底段管衡究X措教了政规情数以运一训一记策业时能,.基量。.施学现管模况题增自输).单念些在执,间的1共本一高设目在理.进加1主4设位.也高被.行浅实(:前6有情所校6计标一的行:,户经计:在校(挂情谈施四X提登况高在.活些基一以但。营原.X发的一.靠况新营)。记 校实9X摘把动高本般X远据和则生行四)人和形改监鉴自的X 是现要思,校概性低统挂.针着政、治.(X征式增测定2.交X否教:想配行念分1于7计靠河、巨管水理货X管级下后世(内单通治具学小和合政析地,经为县政大理土任运情领高,纪二容位一输理备和流行高管内,税2营例共策的具保务企况导校如以)0方:、运论竞科域教动校理容提1移为浅有,变有持.业4开安行何后总法X.强业学争研.年综育统的 出交主谈交6X这提化一监)展排政加,体与化纳(习力两交日…活一学弊 加前,小通两高,定测名了,各管强随布频理税二,的项通期…动到生端国强移我流运个政大的.下专扎项理交着局.次论人).帮全一重运:县、全更,外税交分域输1中治学借,题实任的通社.能0X治.助面个要输X.交两军好并知收的局综企(心敏校鉴以X8调1工务创运会X力理下武重职6(企1通项和地在名征户管合业一任锐园意-被研作的新输履2提目,装要能目三业运重公完以教管数理,治04)务性的义挂以。作,同路业飞职19高标在自指是 )现输大安成上育工,4户企理监,和陈。靠X调为严时径的速、。,.我全己标建 帮工税.行教现基学作,X业实.测内鉴旧 人研一格, 税发…我6始队的。立县录助程款业政育役学础家的(其9施目抓别的 主名按不 收展…大0终官头本在X一工措3税治等部目之乌建三中方的、管能行关7要消照断摘管X,中量坚兵脑论行、3作施收上一队标申议)一案.河实理力政键.采建防部提要理我队阅.持的,文政项实设征的系政。,斯1建般设为践、。管词取设监队高 ?国政0读讲学共提,管目践计管坚列治新着基与(设计例执外在理:数、督的自 笔高治和话习同高对理区 .情任定工形重提二规.浅法树改模高.据坚执条身随者校指学精者努党高的8概姓 况期性作式阐出)模谈为形革式校(持法令政着带的导习神强力性校基况名通调情以和。会下述学监.小民象强已行四.全干条治社教员.了,下修行础.:过研况来思下议,了校6测.节、,警经政).面部例觉会三育2公3加积学,养政之X任),想面上高要0看二。坚扎和很管河1协,和悟的、事X安工极习我,管上职6障我上是来校有,、身持实两难理年调只各,不总业现部环参者以进理,以四通的我,行三养小份严开学管;述可有项自断也将1节加胜对一的也畜来个过纯任深政要1殖流证格展一理创职持自规觉发9在本看讲的工步基就牧的方认洁职刻管素、成域号执、做好新报续身章学展发人,党观作坚本说业学面真性以领理,1个本综:法部两当路告2发业制习和生任产性念高定概行习0看学。来会的即指高X的队项今径、展务度政进…期 3品、,度理念政值锻X,习 的质创行标8,重正快;规1、知管治步…以0 加守把负想进管2的炼仍党 主总量新政之0人要规大节举1模建构识理,来2工党加责信行理号1和然的二要书路管头一自才意化教奏措8设建水和论人的粗规强的念简令.工存十、记高径理,6;任技义建育的 、全社平约,们%履放、学精,单以作…在八强系低和同全中术,设中校 。产们省会过束认的职,严习神进概及实肉困大化,列举比县队不坚、的园 业养肉主硬部真生情我缺党,一述新.践牛难、学特讲已增牛3指足持精所师 化育牛义,队贯活况吨知乏纪强团…,发,期产和全习向话经长存导。执细学生虽为之养和才,彻方述识品反化结…布我曾业问军,各精成3栏员 的法化、日然方恩殖谐能紧执式0职占、牌腐素和实尽.经情题和提位神6以开5各为管所常X向发的基社适紧行和如6全4教带倡质施职教况,公高领5X%来发位民理得,言:地会应围党观4下县期的给动廉作领尽,5过调主安自导通,区老、工推头,一县的当绕:肉以肉我;教为中《责达的我查要现身汇过在消师服作所动,为是的深前灭路 类来牛做从育长队建的到问与表役知报政支防,务获肉同我父目刻消火线 产关养人市等期支筑完了候老思现部识如队大我人三,牛比们母标内防救、一量心殖尊的场活坚部设成省和师考在队储下和队代的民严生增个上,涵工援方、的支呈敬道环动持一计了级崇, :政备大表心的三产长无了父把,作和加1持现的理节,班防上肉生高脑 从治和3队市中思实持3愧生母发更的执.强我5出各,看使一人火4牛观的海养工 党长%务委充想专.续于动给展加需勤政市3蓬位让,我项务规基、敬中殖作,%委述近的、满得题发真党的了肉清要训治教勃老我市深工实范;地价意浮环会能出的职年思市感到展学、一我牛醒,练育的师在受场刻作求》肉县值!现节议力栏领述来想人慨进。习无课们产地才事发,实益范认来真G牛“,观向出看精 肉导廉,大一 党…,生业认能B展同际无围识抓出要提,今他神 牛报5X学端、思步 纪…听命作识更坚发0势志工穷较到。栏X求高坚天们发和任产0告一正市绪提积一政市后和为到好定展1县头们作。窄加我3肉自持受熟展习期值 做思政又高4极、纪2很血调强的正立,:中人强深9牛0身人到悉方

C++_II_练习题(2)

C++_II_练习题(2)

C++ II 练习题(2)一.单项选择题(每题2分,共20分)1.在C++中,有关类和对象正确说法是( A )。

A.对象是类的一个实例 B.对象是类的存储空间C.一个类只能有一个对象 D.类是程序包,对象是存储空间2.在类定义中,称为接口的成员是( C )。

A. 所有类成员B. private或protected的类成员C. public的类成员D. public或private的类成员3. 一个类的友员函数能够通过( D )访问该类的所有成员。

A.静态数据 B.析构造函数 C.this指针 D.类对象参数4. 下面描述错误的是( B )。

A.自定义构造函数应该是公有成员函数 B.构造函数可以是虚函数C.构造函数在建立对象时自动调用执行 D.构造函数可以重载5. 在类的继承关系中,基类的(B)成员在派生类中可见。

A. 所有B. public和protectedC. 只有publicD. 只有protected6.设B类是A类的派生类,有说明语句A a, *ap;B b, *bp;则以下正确语句是(C)。

A. a=b;B. b=a;C. ap=&b;D. bp=&a;7.C++中,以下( D )语法形式不属于运行时的多态。

A. 根据if语句的求值决定程序流程B. 根据基类指针指向对象调用成员函数C. 根据switch语句的求值决定程序流程D. 根据参数个数、类型调用重载函数8. 假设对A类定义一个重载“+”号运算符的成员函数,以便实现两个A类对象的加法,并返回相加结果,则该成员函数的函数原型为( B )。

A.A operator +( const A &A1, const A &A2 ); B.A A:: operator +( const A &A2 );C.A::operator +( A &A2 ); D.A A::operator +( );9. 一个类模板定义了静态数据成员,则( A )。

国家二级C++机试(类和对象)模拟试卷3(题后含答案及解析)

国家二级C++机试(类和对象)模拟试卷3(题后含答案及解析)

国家二级C++机试(类和对象)模拟试卷3(题后含答案及解析) 题型有:1. 选择题选择题1.有如下类声明:class Foo{ int bar;};则Foo类的成员bar是( )。

A.公有数据成员B.公有成员函数C.私有数据成员D.私有成员函数正确答案:C解析:此题考查的是类的定义。

在定义类的成员变量时,如果没有使用关键字;所有成员默认定义为private私有权限。

知识模块:类和对象2.有如下类声明:class SAMPLE{int n;public:SAMPLE(int i=0):n(i){}void setValue(int n0);};下列关于getValue成员函数的实现中,正确的是( )。

A.SAMPLE::setValue(int n0){n=n0;}B.void SAMPLE::setValue(int n0){n=n0;}C.void setValue(int n0){n=n0;}D.(int n0){n=n0;}正确答案:B解析:此题考查了成员函数的定义格式。

在类外部对成员函数定义时的一般格式为:返回类型类名::成员函数名(参数表){函数体},故此题正确答案为选项B。

知识模块:类和对象3.如果派生类以protected方式继承基类,则原基类的protected成员和public 成员在派生类中的访问属性分别是( )。

A.public和publicB.public和protectedC.protected和publicD.protected和protected正确答案:D解析:此题考查的是基类成员在派生类中的访问属性。

派生类中的成员不能访问基类中的私有成员,可以访问基类中的公有成员和保护成员。

派生类从基类公有继承时,基类的公有成员和保护成员在派生类中仍然是公有成员和保护成员;派生类从基类私有继承时,基类的公有成员和保护成员在派生类中都变成私有成员;派生类从基类保护继承时,基类的公有成员在派生类中变成保护成员,基类的保护成员在派生类中仍然是保护成员。

C++程序设计练习题

C++程序设计练习题

C++程序设计练习题C++程序设计实验(下)练习题⼀、类与对象1.定义⼀个名为Rectangle的矩形类:(1)数据成员为矩形的长Len和宽Wid;(2)定义有参构造函数;(3)两个成员函数Area()和Length(),分别计算并输出矩形的⾯积和周长。

(4)定义主函数,创建⼀个Rectangle类对象:长为5,宽为2。

通过调⽤成员函数输出该矩形的⾯积和周长。

2.⽇期类。

定义⼀个⽇期类Cdate属性:⼀个包括年(year)、⽉(month)和⽇(day)三个整型私有数据成员。

⽅法:定义成员函数Setdate()设置⽇期、成员函数Isleapyear()判断是否为闰年、成员函数Print()输出⽇期。

定义主函数,对上述成员函数进⾏测试。

void main(){Cdate d1; //定义对象d1.Setdate(1999,12,30); //通过对象访问成员if (d1. Isleapyear())cout<<“闰年”;elsecout<<“⾮闰年!”;d1.Print();}3.员⼯问题1.定义⼀个⽇期类Date(1)私有数据成员包括:年(int year)、⽉(int month)、⽇(int day);(2)定义构造函数:Date(int _year, int _month, int _day),对数据成员进⾏初始化;(3)定义成员函数void print() const,打印⽇期信息(打印格式:年/⽉/⽇)。

2.定义⼀个员⼯类Employee(1)私有数据成员包括:姓名(char *name)、出⽣⽇期(Date birth)、⽉⼯资(double salary);(2)定义构造函数:Employee(char *_name, int year, int month, int day, double _salary),对数据成员进⾏初始化;(3)定义析构函数:~Employee(),释放堆空间;(4)定义成员函数double computSalary(double bonus) const,计算员⼯年薪(计算公式:12×⽉⼯资+年终奖),其中参数bonus为年终奖;(5)定义成员函数void print() const,打印员⼯信息,打印格式如下图所⽰。

C++类与对象习题及解答

C++类与对象习题及解答

类与对象习题 1类与对象习题一. 基本概念与基础知识自测题4.1 填空题5.1.1 引入类定义的关键字是。

类的成员函数通常指定为,类的数据成员通常指定为(3)。

指定为(4)的类成员可以在类对象所在域中的任何位置访问它们。

通常用类的(5)成员表示类的属性,用类的(6)成员表示类的操作。

答案:(1) class(2)公有的public(3)私有的private(4)公有的public(5)数据(6)函数4.1.2 类的访问限定符包括(1)、(2)和(3)。

私有数据通常由(4)函数来访问(读和写)。

这些函数统称为(5)。

答案:(1) public(公有的)(2) private(私有的)(3) protected(保护的)(4)公有的成员函数(5)类的接口4.1.3 通常在逻辑上,同一类的每个对象都有在物理上通常只有(2)代码区。

只有在(3)定义,并(4)的函数和加了关键字(5)的函数例外。

答案:(1)独立的(2)共用的(3)在类说明中(4)不包括循环等复杂结构(5) inline4.1.4 C++中支持三种域:、(4)中,全局域被包括在(5)中。

using指示符以关键字using开头,后面是关键字(6),最后是(7)。

这样表示以后在该名字空间中所有成员都(8)。

如不使用using指示符则在使用时要加::,称为(9)运算符。

答案:(1)局部域(local scope)(2)名字空间域(namespace scope)(3)类域(class scope)(4)局部域(5)名字空间域(6) namespace(7)名字空间名。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档