《面向对象程序设计》课程设计
- 格式:doc
- 大小:82.00 KB
- 文档页数:16
个人整理资料, 仅供交流学习
《面向对象程序设计》课程设计
系别; 计算机系
专业:计算机科学与技术
年级:
姓名: ****************
学号: ****************
班级:****************************
2009 年 6 月 日
个人整理资料, 仅供交流学习
一、 课程设计的目的
本课程设计是计算机科学与技术专业重要的实践性环节之一,是在学生学习完《面向对象程序设计》课程后进行的一次全面的综合练习。本课程设计的目的和任务:
. 巩固和加深学生对面向对象课程的基本知识的理解和掌握。.
掌握语言编程和程序调试的基本技能。
. 利用语言进行基本程序设计。
. 掌握书写程序设计说明文档的能力。
. 提高运用语言解决实际问题的能力。
二、 课程设计的内容
、设计要求
1) 分析课程设计题目的要求
2) 写出详细设计说明
3) 编写程序代码,调试程序使其能正确运行
4) 设计完成的软件要便于操作和使用
5) 设计完成后提交课程设计报告
、设计题目
编写一个程序处理一系列的几何形状:根据用户输入的形状类型(如园、矩形、三角形、椭圆等)和相应的参数(如位置和半径),可以计算其周长、面积。
、详细设计说明及流程图
本次程序设考虑到题目要求运用程序处理一系列的几何形状:我们在编程中经过小组讨论,决定运用的是抽象类,我们定义了一个基类,然后使处理图形的类继承它,为了使程序更简洁化,提高其灵活性,我们还使用了,返回语句等一系列语句,返回语句构成了程序的选择控制和循环控制语句可无条件的结束语句,从而提高了个人整理资料, 仅供交流学习
程序的灵活性。
矩形 圆 椭圆 三角形
调用虚函数 调用虚函数 调用虚函数 调用虚函数
输出面积、周长 选择菜单
返回或结束 清屏
结束 返回菜单 开始
平行四边形
调用虚函数 调用虚函数 正边形
个人整理资料, 仅供交流学习
面积周长计算
圆形
椭圆
平行四边形 输出圆的面积为** 周长为**
输出结果 继承
继承 继承 (基类)
圆形 椭圆 平行四边形 正边
形 矩形 三角形
输出椭圆的面积为** 周长为*。**() 输入半长轴 半短轴 输入圆的半径
输出结果 个人整理资料, 仅供交流学习
正边形
矩形 继承基类
输出“正边形的边数为:” 重定义基类的纯虚函数
输出正边形的面积为****() 周长为**()*
输出结果 继承基类
输出“平行四边形的底乘以高为:” 重定义基类的纯虚函数
输出平行四边形的面积为*。
输出结果 个人整理资料, 仅供交流学习
三角形
、源代码(有详细注释) 初始化数据
定义纯虚函数 定义虚析构函数 输出“三边长为:” 重定义基类的纯虚函数
输出三角形的面积为:((*()*()*())周长为:
输出结果 输出“矩形的长为:宽:” 重定义基类的纯虚函数
输出矩形的面积为*。周长为:*()
输出结果 继承基类
继承基类 个人整理资料, 仅供交流学习
文件
<>
定义基类
{:
();
(); 虚拟析构函数
( ){;}初始化数据的函数
(); 定义纯虚函数
; 定义变量
};
""
<>
: 公有继承基类
{:
();
(); 虚拟析构函数
() 重定义基类的纯虚函数
{ <<"平行四边形的底乘以高为:"<<<<"*"<<<<'\';
<<"平行四边形的周长为:"<<*()<<'\'; 输出周长
<<"平行四边形的面积为:"<<*<<'\'; 输出面积}
};
""
<>
<> 个人整理资料, 仅供交流学习
: 公有继承基类
{:
();
(); 虚拟析构函数
() 重定义基类纯虚函数
{<<"矩形的长为:"<<<<'\'<<"矩形的宽为:"<<<<'\';
<<"面积为:"<<*<<'\'; 计算并输出面积
<<"周长为:"<<*()<<'\';} 计算并输出周长};
}
""
<>
: 公有继承基类
{:
();
(); 虚拟析构函数
() 计算周长和面积的函数
{ <<"圆的半径:"<<<<'\'; 输入半径
<<"面积为:"<<**<<'\'计算并输出面积
<<"周长为:"<<**<<'\'; 输出面积}
};
""
<>
: 公有继承基类
{: 个人整理资料, 仅供交流学习
();
(); 虚拟析构函数
() 重定义基类的纯虚函数椭圆的半长轴为:"<<<<'\'<<"半短轴为:"<<<<'\';
<<"面积为:"<<**<<'\'计算并输出面积
<<"周长:"<<***()<<'\';} 输出周长};
}
""
<>
<>
: 公有继承基类
{:
();
(); 虚拟析构函数
() 重定义基类的纯虚函数
{<<"三边长为:"<<<<" 和 "<<<<" 和 "<<<<'\';
;
(); 引用海伦公式
<<"三角形的面积为:"<<((*()*()*()))<<'\'计算并输出面积
<<"三角形周长为:"<<<<'\';} 计算并输出周长
};
}
""
<> 个人整理资料, 仅供交流学习
<>
: 公有继承基类
{:
();
(); 虚拟析构函数
() 重定义基类的纯虚函
{<<"正边形的边数为:"<<<<" "<<<<'\';
;
; 定义圆周率
*; 计算每边所对应的圆心角
<<"正边形面积为:"<<****()<<'\'计算并输出面积
<<"正边形周长为:"<<**()*<<'\'; 输出周长}
};
函数:
<>
<>
<>
<>
""
""
""
""
""
"" 个人整理资料, 仅供交流学习
""
()
{<<" "<<'\';
<<'\';
<<"*****************************************************************"<<'\';
<<" ***"<<'\'<<" "<<". 平行四边形"<<'\'<<'\'<<'\'<<'\'<<".矩形 "<<"
******* "<<'\';
<<" *"<<'\'<<'\'<<'\'<<'\'<<'\'<<'\'<<'\'<<" * *"<<'\';
<<" * *"<<'\'<<" "<<". 圆形"<<'\'<<'\'<<'\'<<'\'<<".椭圆 "<<" * *
"<<'\';
<<" * *"<<'\'<<'\'<<'\'<<'\'<<'\'<<'\'<<'\'<<" "<<" *"<<'\';
<<" *******"<<" "<<".三角形 "<<'\'<<'\'<<'\'<<'\'<<".正边形 "<<" ***
"<<'\';
<<"*****************************************************************"<<'\';
<<" 请选择图形类型"<<'\';
<<'\';
<<"你选择的是:";
;
;
>>;
() 选择菜单
{ :{<<"你选择的是平行四边形"<<'\'<<"请输入底为:">>; 输入数据 个人整理资料, 仅供交流学习
<<"请输入高为:">>; 输入数据
<<"请输入斜边为:">>; 输入数据
; 定义类对象
(); 初始化数据
(); 调用纯虚函数
};
<<'\';
;
:{<<"你选择的是矩形"<<'\'<<"请输入长为:">>; 输入数据
<<"请输入宽为:">>; 输入数据
; 定义类对象
(); 初始化数据
(); 调用纯虚函数
};
<<'\';
;
:{<<"你选择的是圆形"<<'\'<<"请输入半径为:">>; 输入数据
; 定义类对象
(); 初始化数据
(); 调用纯虚数
};
<<'\';
;