面向对象程序设计实验指导书Word格式.docx
- 文档编号:16020743
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:13
- 大小:24.09KB
面向对象程序设计实验指导书Word格式.docx
《面向对象程序设计实验指导书Word格式.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计实验指导书Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
{int*p,i;
i=5;
p=&
i;
i=*p+10;
cout<
i="
i<
程序三:
voidmain(void)
{inti=10;
int&
r=i;
r++;
,r="
r<
'
\n'
i=88;
程序四:
intf(inti)
{staticintk=1;
for(;
i>
0;
i--)
k+=i;
returnk;
}
voidmain()
{inti;
for(i=0;
5;
i++)
f(i)<
"
;
程序五:
voidfunc();
intn=1;
{staticinta;
intb=-9;
cout<
a:
a<
b:
b<
n:
<
n<
b+=4;
func();
n+=10;
voidfunc()
{
staticinta=2;
intb=5;
a+=2;
n+=12;
b+=5;
cout<
n<
实验二C++对C扩充
1、理解在面向对象程序设计过程中C++对C功能扩充与增强,并善于在编写程序过程中应用这些新功能。
2、进一步熟悉编辑、编译、连接和运营C++程序办法。
3、进一步熟悉C++程序构造和编程办法。
intamount=123;
{intamount=456;
:
amount<
'
:
amount=789;
2、编写一种程序,用来求2个或3个正整数中最大数。
①用不带默认参数函数实现。
②用带默认参数函数实现。
3、有5个字符串,规定对它们按由小到大顺序排列,用string办法。
4、定义一种求两个数中较小值函数模板min(),规定在main()函数中进行调用求两个
浮点型数据和两个整型数据中较小数。
实验三类和对象
(一)
1、掌握声明类办法,类和类成员概念以及定义对象办法。
2、掌握类构造函数与析构函数概念和用法。
3、初步掌握用类和对象编制基于对象程序。
1、分析下面程序,写出其运营时输出成果。
iostream>
usingnamespacestd;
classDate
{public:
Date(int,int,int);
Date(int,int);
Date(int);
Date();
voiddisplay();
private:
intmonth;
intday;
intyear;
};
Date∷Date(intm,intd,inty):
month(m),day(d),year(y){}
Date∷Date(intm,intd):
month(m),day(d){year=;
Date∷Date(intm):
month(m)
{day=1;
year=;
Date∷Date()
{month=1;
day=1;
voidDate∷display()
{cout<
month<
″/″<
day<
year<
intmain()
{Dated1(10,13,);
Dated2(12,30);
Dated3(10);
Dated4;
d1.display();
d2.display();
d3.display();
d4.display();
return0;
2、建立一种名为Student类,该类有如下几种私有成员变量:
学生姓名、学号、性别、年龄。
尚有如下两个成员变量:
一种用于初始化学生姓名、学号、性别和年龄构造函数,一种用于输出学生信息函数。
编写一种主函数,声明一种学生对象,然后调用成员函数在屏幕输出学生信息。
3、类Person定义如下,请实现该类,并在主函数中创立对象obj,然后使用构造函数为obj赋予初始值(内容自定)。
classPerson
{private:
stringname;
intage;
intsalary;
chartel;
public:
Person(stringxname,intxage,intxsalary,charxtel);
voiddisplay();
实验四类和对象
(二)
1、进一步加深对类和对象理解。
2、掌握对类对象数组、对象指针及其用法。
3、掌握友元概念和使用。
4、理解类模板用法。
1、分析并比较下列程序运营成果。
#include<
classsmallone
smallone(intsma)
{cout<
smconstr:
sma<
\n"
voidfn(intn)
{smallonesm(n);
infunctionfnwithn="
intmain()
{fn(10);
fn(20);
{staticsmallonesm(n);
}
2、建立一种对象数组,内放5个学生数据(学号、成绩),设立一种函数max,用指向对象指针作函数参数,在max函数中找出5个学生中成绩最高者,并输出其学号。
3、声明一种类模板,运用它分别实现两个整数、浮点数和字符比较,求出大数和小数。
(例3.14)
实验五运算符重载
1、进一步理解运算符重载概念和用法。
2、掌握几种惯用运算符重载办法。
1、定义一种复数类Complex,重载运算法“+”,使之能用于复数加法运算。
将运算符重载为普通函数(非成员、非友元)、成员函数、友元函数。
依照规定修改通过函数来实现复数相加示例,分别编写程序,求两个复数之和。
classComplex//定义Complex类
Complex(floatx=0,floaty=0){real=x;
imag=y;
}//构造函数
Complexcomplex_add(Complex&
c2);
//声明复数相加函数
voiddisplay(){cout<
real<
+'
imag<
i'
endl;
};
private:
floatreal;
//实部
floatimag;
//虚部
ComplexComplex:
complex_add(Complex&
c2)
{Complexc;
c.real=real+c2.real;
c.imag=imag+c2.imag;
returnc;
intmain()
{Complexcomplex1(3.34f,4.8f),complex2(12.8f,5.2f);
Complexcomplex;
//定义3个复数对象
complex=plex_add(complex2);
//进行两个复数加运算
complex.display();
实验六继承和派生
1、理解继承在面向对象程序设计中重要作用。
2、进一步理解继承与派生概念。
3、掌握通过继承派生出一种新类办法。
4、理解虚基类作用和用法。
1、运营程序,分析构造函数与析构函数调用顺序。
classA
{public:
A(){cout<
A:
Constructor"
~A(){cout<
Destructor"
classB:
publicA
{public:
B(){cout<
B:
~B(){cout<
{Bb;
classA
{inta;
public:
A(intaa=0){a=aa;
~A(){cout<
”DestructorA!
”<
classB:
{intb;
public:
B(intaa=0,intbb=0):
A(aa){b=bb;
~B(){cout<
”DestructorB!
{Bx(5),y(6,7);
2、分别声明Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向 对象 程序设计 实验 指导书
![提示](https://static.bdocx.com/images/bang_tan.gif)