面向对象程序设计实验指导书.docx

上传人:b****6 文档编号:3109806 上传时间:2022-11-17 格式:DOCX 页数:13 大小:24.09KB
下载 相关 举报
面向对象程序设计实验指导书.docx_第1页
第1页 / 共13页
面向对象程序设计实验指导书.docx_第2页
第2页 / 共13页
面向对象程序设计实验指导书.docx_第3页
第3页 / 共13页
面向对象程序设计实验指导书.docx_第4页
第4页 / 共13页
面向对象程序设计实验指导书.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

面向对象程序设计实验指导书.docx

《面向对象程序设计实验指导书.docx》由会员分享,可在线阅读,更多相关《面向对象程序设计实验指导书.docx(13页珍藏版)》请在冰豆网上搜索。

面向对象程序设计实验指导书.docx

面向对象程序设计实验指导书

实验一熟悉VC++IDE开发环境

一、实验目

1、熟悉VC++6.0集成开发环境,纯熟掌握VC++6.0项目工作区、各种编辑器、菜单栏和工具栏使用。

2、掌握如何编辑、编译、连接和运营一种C++程序。

3、通过运营简朴C++程序,初步理解C++源程序构造和特点。

二、实验规定

1、分析下列程序运营成果。

程序一:

#include

intadd(intx,inty=8);

voidmain()

{intx=4;

cout<

cout<

}

intadd(intx,inty)

{returnx+y;

}

程序二:

#include

voidmain()

{int*p,i;

i=5;

p=&i;

i=*p+10;

cout<<"i="<

}

程序三:

#include

voidmain(void)

{inti=10;

int&r=i;

r++;

cout<<"i="<

i=88;

cout<<"i="<

}

程序四:

#include

intf(inti)

{staticintk=1;

for(;i>0;i--)

k+=i;

returnk;

}

voidmain()

{inti;

for(i=0;i<5;i++)

cout<

}

程序五:

#include

voidfunc();

intn=1; 

voidmain()

{staticinta;   

intb=-9;     

cout<<"a:

"<

"<

"<

b+=4;

func();

cout<<"a:

"<

"<

"<

n+=10;

func();

}

voidfunc()

{ staticinta=2;  intb=5;         

a+=2;

n+=12;

b+=5;

 cout<<"a:

"<

"<

"<

}

 

实验二C++对C扩充

一、实验目

1、理解在面向对象程序设计过程中C++对C功能扩充与增强,并善于在编写程序过程中应用这些新功能。

2、进一步熟悉编辑、编译、连接和运营C++程序办法。

3、进一步熟悉C++程序构造和编程办法。

二、实验规定

1、分析下列程序运营成果。

#include

intamount=123;

voidmain()

{intamount=456;

cout<<:

:

amount<<',';

cout<

:

:

amount=789;

cout<<:

:

amount<<',';

cout<

}

2、编写一种程序,用来求2个或3个正整数中最大数。

①用不带默认参数函数实现。

②用带默认参数函数实现。

3、有5个字符串,规定对它们按由小到大顺序排列,用string办法。

4、定义一种求两个数中较小值函数模板min(),规定在main()函数中进行调用求两个

浮点型数据和两个整型数据中较小数。

 

实验三类和对象

(一)

一、实验目

1、掌握声明类办法,类和类成员概念以及定义对象办法。

2、掌握类构造函数与析构函数概念和用法。

3、初步掌握用类和对象编制基于对象程序。

二、实验规定

1、分析下面程序,写出其运营时输出成果。

#include

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;

year=;

}

voidDate∷display()

{cout<

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

#include

classsmallone

{public:

smallone(intsma)

{cout<<"smconstr:

"<

};

voidfn(intn)

{smallonesm(n);

cout<<"infunctionfnwithn="<

}

intmain()

{fn(10);

fn(20);

return0;

}

程序二:

#include

#include

classsmallone

{public:

smallone(intsma)

{cout<<"smconstr:

"<

};

voidfn(intn)

{staticsmallonesm(n);

cout<<"infunctionfnwithn="<

}

intmain()

{fn(10);

fn(20);

return0;

}

2、建立一种对象数组,内放5个学生数据(学号、成绩),设立一种函数max,用指向对象指针作函数参数,在max函数中找出5个学生中成绩最高者,并输出其学号。

3、声明一种类模板,运用它分别实现两个整数、浮点数和字符比较,求出大数和小数。

(例3.14)

实验五运算符重载

一、实验目

1、进一步理解运算符重载概念和用法。

2、掌握几种惯用运算符重载办法。

二、实验规定

1、定义一种复数类Complex,重载运算法“+”,使之能用于复数加法运算。

将运算符重载为普通函数(非成员、非友元)、成员函数、友元函数。

依照规定修改通过函数来实现复数相加示例,分别编写程序,求两个复数之和。

#include

usingnamespacestd;

classComplex//定义Complex类

{public:

Complex(floatx=0,floaty=0){real=x;imag=y;}//构造函数

Complexcomplex_add(Complex&c2);//声明复数相加函数

voiddisplay(){cout<

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();

return0;

}

 

实验六继承和派生

一、实验目

1、理解继承在面向对象程序设计中重要作用。

2、进一步理解继承与派生概念。

3、掌握通过继承派生出一种新类办法。

4、理解虚基类作用和用法。

二、实验规定

1、运营程序,分析构造函数与析构函数调用顺序。

程序一:

#include

classA

{public:

A(){cout<<"A:

Constructor"<

~A(){cout<<"A:

Destructor"<

};

classB:

publicA

{public:

B(){cout<<"B:

Constructor"<

~B(){cout<<"B:

Destructor"<

};

voidmain()

{Bb;

}

程序二:

#include

classA

{inta;

public:

A(intaa=0){a=aa;}

~A(){cout<<”DestructorA!

”<

};

classB:

publicA

{intb;

public:

B(intaa=0,intbb=0):

A(aa){b=bb;}

~B(){cout<<”DestructorB!

”<

};

voidmain()

{Bx(5),y(6,7);

}

2、分别声明Teacher(教师)类和Cadre(干部)类,采用多重继承方式由这两个类派生出

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1