面向对象练习

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

面向对象练习题

1、编写一个类Calculator1,实现加、减两种运算,然后,编写另一个派生类Calculator2,实现加、减、乘、除两种运算。

2、编写一个静态类,其中包含一个排序的方法Sort(),当传入的是一串整数,就按照从小到大的顺序输出,如果传入的是一个字符串,就将字符串反序输出。

3.设计一个立方体类Box,它能计算并输出立方体的体积和表面积。

4.编写一个程序,设计一个点类Point,实例化两个点之后,能调用其方法求两个点之间的距离。

5.创建一个employee类,该类中姓名、街道地址、市、省和邮政编码。把表示构造函数、changname()、display()的函数的原型放在类定义中,构造函数初始化每个成员,display()函数把完整的对象数据打印出来。

6. 编写出一个通用的人员类(Person),该类具有姓名(Name)、年龄(Age)、性别(Sex)等域。然后对Person 类的继承得到一个学生类(Student),该类能够存放学生的5门课的成绩,并能求出平均成绩。最后在Main函数中对student类的功能进行验证。

7.(1)定义一个游戏中Hero 英雄的类,在该类中定义英雄的名字,生命值和等级3 个属性,定义一个构造函数完成对生命值和等级的初始化,分别赋初值为100,1。同时实现名字的输入和英雄信息的输出。

(2)在上一题的基础上,为英雄再定义拥有一个参数的构造方法,传入一个英雄等级的值,如果为1,则为普通英雄,生命值为100,

如果该值为2,则为高级英雄,生命值初始化为200。

(3)在上两英雄类型的基础上,为英雄添加一个基本战斗的方法,该方法拥有一个英雄类型的对手参数,每次战斗,能降低对方10 点血。再增加一个绝招的重载方法,加入一个战斗类型参数,通过输入不同绝招参数,降低对方不同的血量。

8.编写一个程序,输入N个学生数据,包括学号、姓名、成绩,要求输出这些学生数据并计算平均分。

思路:

设计一个学生类Stud,除了包括no(学号)、name(姓名)和deg(成绩)数据成员外,有两个静态变量sum和num,分别存放总分和人数,另有成员函数disp(),用于输出数据成员的值,另有一个静态成员函数avg(),它用于计算平均分。在main()函数中定义了一个对象数组用于存储输入的学生数据。

9.编写一个程序,统计学生成绩,其功能包括输入学生的姓名和成绩,按成绩从高到低排列打印输出,对前%70的学生定为合格(PASS),而后30%的学生定为不合格(FAIL)

思路:

设计一个类student,包含学生的姓名和成绩等数据。设计一个类Compute: sort()、disp(),它们分别用于按成绩排序和输出数据。

相关文档
最新文档