《面向对象程序设计》编程题复习及其答案.docx
- 文档编号:30530610
- 上传时间:2023-08-16
- 格式:DOCX
- 页数:41
- 大小:20.29KB
《面向对象程序设计》编程题复习及其答案.docx
《《面向对象程序设计》编程题复习及其答案.docx》由会员分享,可在线阅读,更多相关《《面向对象程序设计》编程题复习及其答案.docx(41页珍藏版)》请在冰豆网上搜索。
《面向对象程序设计》编程题复习及其答案
《面向对象程序设计》复习题
1、(C++的输入输出)天猫优惠券,我就要券
定义一个函数max,实现输入两个数a、b,比较并从小到大输出。
2、(函数的重载)
(1)定义一个带两个参数的函数max,输出最大值。
(2)再定义一个带三个参数的函数max,输出最大值。
(3)主函数测试之。
3、(有默认参数的函数)
将题2用带默认参数的函数实现。
4、(变量的引用)
(1)定义一个swap1函数,以普通形参传入两个变量a、b,互换a、b的值。
(2)定义一个swap2函数,以指针形参传入两个变量a、b,互换a、b的值。
(3)定义一个swap3函数,以引用形参输入两个变量a、b,互换a、b的值。
(4)主函数定义两个变量x、y传入三个函数,观察x、y值前后的变化。
5、(类的定义)
定义一个student类,数据成员包括:
学号num,姓名name,年龄age,性别sex,成员函数包括:
(1)set函数,键盘输入学号,姓名,年龄,性别
(2)display函数,输出学生信息。
6、(构造函数和析构函数)
定义一个student类,数据成员包括:
学号num,姓名name,年龄age,性别sex,成员函数包括:
(1)构造函数,初始化学号,姓名,年龄,性别
(2)display函数,输出学生信息。
(3)析构函数,输出学生学号。
(4)主函数定义多个对象,并注意构造函数和析构函数的调用顺序。
7、(构造函数的重载)
在题6基础上增加一个默认构造函数,实现构造函数的重载
8、将题6用带默认参数的构造函数实现。
9、(对象数组和对象的动态建立及释放)
在题8基础上,实现如下主函数:
(1)在主函数中定义一个包含三个学生的数组,并初始化之。
(2)在主函数中定义一个student类指针p并用new运算符分配动态内存
(3)用delete删除p指向的动态内存。
(4)观察构造函数和析构函数的调用。
10、(复制构造函数)
在题8基础上新增加一个复制构造函数,并主函数新增复制构造对象。
11、(静态成员)
定义一个student类,数据成员包括:
学号num,姓名name,成绩score,累加总分sum,累计人数count。
成员函数包括:
构造函数统计人数count;
(1)非静态成员total函数,求sum。
(2)静态成员average函数,求平均成绩。
(3)主函数定义包含3个学生的数组,求三个学生的平均成绩。
12、(友元函数)
定义一个Time类,私有数据成员包括:
时hour、分minute、秒second
成员函数:
构造函数Time()
定义一个友元函数display,使之访问私有成员输出时分秒。
13、(运算符重载)
(1)定义一个复数类,实现对“+”,>>,<<的重载,使之可实现以下主函数。
intmain()
{
Complexa(3,4),b(1,2),c,d,e,f;
c=a+b;
d=a+5;
e=3+b;
cin>>f;
cout< return0; } (2)定义一个Time类,实现对“++”的前缀、后缀重载。 P134 i++: 单目运算符天猫优惠券,我就要券 14、(单继承及派生类构造函数) (1)定义一个person类,数据成员包括: 姓名name,年龄age,性别sex 成员函数: 构造函数及display函数 (2)定义一个派生类student,公有继承与person类,新增成员: 专业major,入学日期enterdate(Date类自定义)。 (3)主函数定义student对象,各类构造函数的调用顺序。 15、(多继承) 在14题基础上由person类再派生出teacher类,新增成员: 职称title,工资wage 16、(虚继承) 由student类和teacher类共同派生出graduate类,新增成员: 年级grade,将person类定义成虚基类,实现用虚继承解决二义性。 17、(抽象类及多态性) 定义一个抽象基类Shape,由它派生出5个派生类,Circle(圆形)、Square(正方形)、Rectangle(矩形)、Trapezoid(梯形)、Triangel(三角形)。 用虚函数分别计算几何图形面积,并求他们的和。 要求定义一个基类指针,使它指向每一个派生类对象,体现其多态性。 1、#include usingnamespacestd; voidmax() { inta,b; cout<<"请输入两个数: "< cin>>a>>b; if(a>b) cout< else cout< } intmain() { max(); return0; } 2、#include usingnamespacestd; voidmax(inta,intb) { if(a>b) cout< else cout< } voidmax(inta,intb,intc) { if(a>b&&a>c) cout< elseif(b>c) cout< else
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象程序设计 面向 对象 程序设计 编程 复习 及其 答案