面向对象程序设计(C++)实验指导 - 精简版 - befine

发布时间 : 星期三 文章面向对象程序设计(C++)实验指导 - 精简版 - befine更新完毕开始阅读

面向对象程序设计(C++)实验指导

一、实验环境

本实验基于当前主流的面向对象开发平台,编码规范遵循主流的参考规范。

二、编程语言和开发工具

C++语言,开发工具不限,建议使用Visual C++ 6.0版本

三、 编码规范(编码规范的要求)

要求遵循良好的的程序设计习惯来设计实验和编写代码。

(注:如果你将程序的很多功能全部放在一个长长的main()主函数中实现,这样的程序设计和编码风格会被扣分,请将不同的功能模块分别用函数来实现。)

1.在实验过程中应注意培养规范的编码风格:

2.标识符的命名应要求达到顾名思义的程度,一看就知道用来做什么; 3.提供足够的注释,注释文字清晰明了; 4.程序排版的要求:

a) 不同功能模块用空行分隔,使功能块一目了然; b) 基本上一条语句一行; 同一层次的语句统一缩进对齐。

四、实验

见后文??

五、注意事项

所有实验要求独立完成,同学之间可以讨论,但严禁抄袭,若发现雷同,抄袭者和被抄袭者此次实验成绩均记零分。

实验一 C++基础 (2课时)

实验目的和要求:

1. 掌握C++程序的基本格式与规范,学会编写简单的C++程序。 2. 理解C++程序结构的特点。 3. 熟悉C++程序的基本输入输出操作。 4. 掌握内联函数的使用方法。 5. 掌握函数重载的定义和使用方法。 6. 掌握C++内存的动态分配与释放方法。 7. 理解引用的概念,掌握引用的使用方法。

预习内容:

cin/cout的使用;new和delete的使用;函数重载;const 常量。

实验内容:

1、用内联函数编写Fibonacci级数,使用if语句判断函数的出口,在程序中用cout语句输出提示信息,Fibonacci级数的公式为:

1n?1,2? fib(n)???fib(n?1)?fib(n?2)n?2内联函数inline int fib(int n)。

2、程序Ex_Swap实现数据交换。分别用指针和引用作为函数mySwap的形参,并通过重载int、double型变量值的交换。

3、设计一个函数,形参是引用类型,要求输入三个整数(cin输入,cout提示输入),按从小到大排序后输出,编程完整的程序并测试。

4、程序Ex-Number实现下述功能:由17人围成一个圈,编号1~17,从第1号开始报数,报到3的倍数的人离开,一直数下去,直到最后只剩下1个人,求此人的编号(要求用new和delete来分配、释放所需内存空间)。

5、设计一个简单的计算器,能够进行加法、减法、乘法和除法功能(整数和浮点数)。格式是先输入一个数,然后输入运算符号,输入另一个数字,最后输出结果。(选做)

实验二 类与对象(一)(2课时)

实验目的和要求:

1. 掌握类、类的数据成员、类的成员函数的定义方式。 2. 理解类成员的访问控制方式。 3. 掌握对象的定义和操作对象的方法。 4. 理解构造函数和析构函数的定义与执行过程。 5. 掌握重载构造函数的方法。

6.了解拷贝构造函数的方法。 预习内容

类(数据成员和成员函数)的定义与访问权限设置;类的构造函数与析构函数的定义与使用。

实验内容:

1、定义一个score类,其中包括私有数据成员和公有成员函数,即

num 学号

Math 高等数学成绩 English 英语成绩 Programming 程序设计成绩

Inscore() 输入学号和各科成绩,并计算平均成绩 showscore() 输出学号和各科成绩 使用score类,输入某班n个学生的学号和各科成绩,然后求各个学生的平均成绩,并列表输出学生的学号、各科成绩和平均成绩。

2、定义日期类型Date。

要求:

(1)包含年月日数据成员;提供默认构造函数、带年月日参数的构造函数、和拷贝构造函数;定义set成员函数可以设置日期;日期加一天操作;定义intput成员函数,输入日期信息,输入格式为“YYYY-MM-DD”;定义print成员函数输出对象的日期。 (2)编写一个可运行的完整程序,构造3个日期类型的对象,并输出相应的日期信息。 (3) 实现日期类型的对象的加减法运算。

3、定义一个类Stock,记录一支股票交易的基本信息,信息包括交易日序号(表示本月的

第几个交易日,用整数表示)、当日最高价、当日最低价、 当日开盘价和当日收盘价。尽量发挥想像力,为该类设计成员函数。

4、在主函数中建立两个股票对象,分别存储该股票昨天和今天两天的信息,以当日收盘价

计算该股票今天的涨幅。

实验三 类与对象(二) (2课时)

实验目的和要求:

1.掌握静态成员的定义与使用。

2.理解对象指针的概念,学会使用指针引用对象。 3.了解this指针的工作方式。

4.掌握静态数据成员和静态成员函数的基本使用方法。 5.理解友元与友元函数的作用,掌握其使用方法。 6. 掌握类的接口与实现的分离技术的使用。

预习内容:

指针引用对象;静态成员的定义与使用;友元的使用方法; 实验内容:

1.使用实验二中的股票类Stock,定义一个对象数组存放连续5个交易日的股票信息。编写一个主函数,计算两个Stock对象(前后两日)的当日收盘价计算当日涨幅。用指针引用对象数组中的两个对象。在主函数中调用该函数计算从第2个交易日开始每天的当日涨幅。

2.在Stock类中定义一个静态数据成员,记录当前Stock对象的数量。

3.设计一个成员函数Assign_stock为对象赋值,其中的形式参数是对另一个Stock对象的引用,使用this指针避免对自己的赋值,在主函数中显示用Assign_stock赋值的对象。

4.定义一个友元函数计算Stock对象的的当日开盘价是否高于当日收盘价。若是,返回真,否则,返回假。

联系合同范文客服:xxxxx#qq.com(#替换为@)