《 面向对象程序设计》课程设计实验报告

更新时间:2023-10-02 02:53:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

浙江理工大学科技与艺术学院机电系课程设计报告

《 面向对象程序设计》课程设计

指导教师 小组成员:专业班级:开设时间:

实 验 报 告

级计算机科学与技术专业 2011-2012(一)

1

2010

浙江理工大学科技与艺术学院机电系课程设计报告

目录

1. 任务1???????????????????????2

1.1 任务介绍……………………………………………2 1.2 小组成员任务分配…………………………………2 1.3.1设计思想及主要流程图 …………………………2 1.3.1主要程序清单 ……………………………………2 1.3.1 运行结果及分析…………………………………4 1.3.2设计思想及主要流程图 …………………………2 1.3.2主要程序清单 ……………………………………2 1.3.2 运行结果及分析 …………………………………4 1.3.3设计思想及主要流程图 …………………………2 1.3.3主要程序清单 ……………………………………2 1.3.3 运行结果及分析…………………………………4

2. 任务2 ??????????????????????2

2.1 任务介绍……………………………………………2 2.2 小组成员任务分配…………………………………2 2.3设计思想及主要流程图 ……………………………2 2.3主要程序清单 ………………………………………2 2.3 运行结果及分析 ……………………………………4 3收获、体会和建议 ……………………………………4

2

浙江理工大学科技与艺术学院机电系课程设计报告

任务1.按照要求设计类 1.根据输出设计类

设计类就是根据数据封装的要求,抽象出适合的类。

有如下测试程序和测试程序的输出结果,要求设计类Welcome。 void main() {

Welcome we; Welcome you(we); you.Display();

you.Set(“Thank you.”); cout<

测试程序的输出结果如右: 设计类Welcome 的原则 1)在头文件Cpp1.h 中声明类 2)在Cpp1.cpp中实现类

3)使用内联函数定义Display()函数

2.使用类改写程序

22编写一个求方程ax?bx?c?0的根的程序,用三个函数分别求当b?4ac大于零、等于零和小于零时方程的根。要求从主函数输入a、b、c的值并输出结果。使用面向过程的解法一般是把变量设为double型,适用库函数cmath进行计算。 请注意:使用面向对象的方法解决这个问题,首先要从解一元二次方程出发,抽象一个代表一元二次方程的类。为了使用这个类,必须根据要结局的问题,为这个类设计合适的数据成员和成员函数。 3.使用包含(聚合)和派生设计新类

(1)使用包含的方法,编写一个点类Point和线段类Line,演示构造函数、复制构造函数、析构函数作用及其调用顺序;

(2)使用派生的方法,编写一个点类Point,然后由它派生线段类,并演示构造函数、复制构造函数、析构函数作用及其调用顺序。

3

浙江理工大学科技与艺术学院机电系课程设计报告

任务1:小组成员任务分配:

李小拉:任务一中的第一个 任务(包括设计思想,流程图,程序编写) 胡海薇:任务一中的第二个 任务(包括设计思想,流程图,程序编写) 周子研:任务一中的第三个 任务(包括设计思想,流程图,程序编写) 最后的结果分析大家一起分析与总结 设计思想:

1. 根据所给的主函数及运行结果来分析,类welcome包含成员函数和数据成

员,输入数据和输出数据都将会显示出来,当输入OK时结束输出数据,最后调用析构函数。

2. 根据题意求二元一次方程的跟,并且要用成员函数和数据成员,应该首先判

断是否是二元一次方程,然后再判断有无根,利用选择函数分别调用1个,0个,2个根的函数并将其输出。每输出一个方程的跟后再选择是否要继续。 3. 1)

2)先定义一个point类,再由point类派生出line类,利用构造函数,复制构造函数和析构函数来计算出点点之间的距离也就是线的长度。

任务1:1 //Cpp1.h

#include

#include//函数strcpy(),stcmy()包含在此头文件中 using namespace std;

4

浙江理工大学科技与艺术学院机电系课程设计报告

class Welcome { private: char str[100]; public:

Welcome(char s[]=\ Welcome (Welcome &); void Set(char []); void Display(); char *Get(); void talk(); ~Welcome(); };

//Cpp1.cpp

#include #include #include%using namespace std; Welcome::Welcome(char s[])

{strcpy(str,s);} //把字符串数组s中的所有字符,拷贝到字符串数组str中 Welcome::Welcome(Welcome &c) //拷贝构造函数 {strcpy(str,c.str);} void Welcome::Set(char s[]) {strcpy(str,s);}

inline void Welcome::Display() {

cout<

char* Welcome::Get() {

return str; }

Welcome::~Welcome() {

5

本文来源:https://www.bwwdw.com/article/yy5d.html

Top