- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
PAGE
PAGE1
课程设计报告
课程设计题目:几何体的表面积与体积
学生姓名:徐辉
专业:软件工程(电商)
班级:1421812
指导教师:魏振华
学号:201420181209
2015年6月30日
目录
TOC\o”1—2”\h\z\u_Toc273547089三、设计方案 2
五、致谢 11
一、引言
通过?C++课程设计,使学生能将学到的面向对象的程序设计思想用到具体的工作和学习中,加深对类与对象的理解,是将计算机课程与实际问题相联接的关键步骤.通过课程设计,能够提高学生分析问题、解决问题,从而运用所学知识解决实际问题的能力,并培养基本的、良好的程序设计技能,因而必须给予足够的重视.
二、设计目的与任务
定义一个抽象类形状(shape),包含输入基本图形的信息函数input()、显示基本图形信息函数disp()、计算表面积的函数area()、计算体积的函数volume(),它们均为纯虚函数。通过继承形状类派生出球体类、正方体类、长方体类、圆柱体类。
程序需实现以下功能:
1、设计菜单实现定义一个抽象类形状(shape),包含输入基本图形的信息函功能选择;
2、输入各种形状信息;
3、显示各种形状信息;
4、计算各种形状的表面积;
5、计算各种形状的体积;
6、输入数据和输出结果用文件的形式实现。
三、设计方案
1、总体设计
该程序主要是在确定物体的形状后,计算物体的表面积和体积,在输入数据和输出结果时用文件的形式,所以这个程序主要用到的内容是类的继承与派生,另外还涉及文件、指针等内容。程序首先建立一个抽象类shape,作为公共接口;然后建立四个图形类:Ball、Cube、Cubiod、Cylinder,公有继承shape类,分别计算各物体的表面积和体积;然后在主函数中定义各对象,调用各类中的成员函数,输出所要结果。
2、详细设计
Input():数据输入函数,输入所需的半径、边长、高等数据;
Area():计算各物体表面积的函数;
Volume():计算各物体体积的函数;
Disp():输出计算结果的函数;
Run():定义指针,调用抽象类里的每个接口(即调用每个函数);
MainMenu():调用各函数,输出结果.
3、程序清单
#include〈iostream
usingnamespacestd;
constdoublePI=3。14;
classshape
{
public:
virtualvoidinput()=0;
virtualvoiddisp()=0;
virtualdoublearea()=0;
virtualdoublevolume()=0;
};
classball:publicshape
{
private:
intr;
public:
ball(doubler=0):r(r)
{
}
voidinput()
{
cout〈〈”输入球体的半径:”〈endl;
cin〉r;
}
doublearea()
{
return4*PI*r*r;
}
doublevolume()
{
return4/3*PI*r*r*r;
}
voiddisp()
{
cout〈球体的半径:〈r〈endl;
cout球体的面积:〈area()〈endl;
cout”球体的体积:〈volume()〈endl;
}
};
classsquare:publicshape
{
private:
intx;
public:
square(doublex=0):x(x)
{
}
voidinput()
{
cout〈”输入正方体的边长”〈endl;
cin〉x;
}
doublearea()
{
return6*x*x;
}
doublevolume(){
returnx*x*x;
}
voiddisp()
{
cout”正方体的边长:x〈endl;
cout”正方体的面积:〈area()〈endl;
cout〈”正方体的体积:〈volume()〈〈endl;
}
};
classcuboid:publicshape{
private:
intl,w,h;
public:
cuboid(doublel=0,doublew=0,doubleh=0):l(
文档评论(0)