| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1307 人关注过本帖
标题:[求助]请教有关C++面向对象与过程的编程题目
只看楼主 加入收藏
moven0810
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-6-19
收藏
 问题点数:0 回复次数:3 
[求助]请教有关C++面向对象与过程的编程题目
我是个计算机语言初学者,学C++有大概两个月了,之前没学过其他什么语言,最近老师出题目给我做,不会啊,只有上网请教高手。谢谢了!!!


第一题: 编写一个程序,实现计算三角形、矩形和圆形三种图形的面积功能。并在主函数 main()中,计算并输出底为10、高为20的三角形的面积;长为30、宽为15的矩形的面积,以及半径为25的圆形的面积。
提示:若用面向对象的编程方法,则可以抽象出一个基类shape,在类中定义一个虚函数,用来计算图形的面积。然后,分别为三角形、矩形和圆形定义三个派生类triangle、rectangle和circle。在main()函数中,定义抽象类的指针ps,并给此指针分别赋予指向triangle、rectangle和circle类的对象的指针,从而对对象进行操作。

第二题:定义一个描述平面中点的类Point, 成员变量包括点的坐标位置x, y,并且都为私有变量,利用类的构造函数为对象置初值。利用类的友员函数计算两点间的距离。在主函数main()中,定义两个点并用求距离的函数计算两点之间的距离。
1.建立一个类Point。
  (1)私有数据成员:
  ●float x, y:平面中点的坐标。
  (2)公有函数成员:
  ●构造函数Point(float , float ):分别用两个值初始化x、y的值。
  ●void Show( ):显示点的坐标。
  ●友员函数:friend float Distance(Point &, Point &):求两点之间的距离函数。
2.编写一个程序测试该类。在主函数main()中,假定点的坐标分别为(0,0)和(30,40),利用Show()输出显示这两个点的坐标,利用Distance()计算两点之间的距离,并输出显示。

第三题:编写一个程序实现公路收费管理功能,根据输入的车型(1:小客车 2:卡车 3:公汽)统计收费金额。
要求:输出各类车型的车辆数和收费小计,合计总的收费金额。
  提示:设计方法:设计一个Free类,包括car、carfee、truck、truckfee、bus、busfee等6个私有数据成员,分别存储各类车型的车辆数和收费小计。另外,该类包括以下成员函数:
   void cars() 统计小客车的车辆数和收费小计
   void trucks() 统计卡车的车辆数和收费小计
   void buss() 统计公汽的车辆数和收费小计
   void process() 收费处理
   void display() 输出收费统计信息

[此贴子已经被作者于2006-6-19 18:05:34编辑过]

搜索更多相关主题的帖子: 面向对象 题目 
2006-06-19 18:04
C++大粉丝
Rank: 4
等 级:贵宾
威 望:10
帖 子:477
专家分:0
注 册:2004-4-23
收藏
得分:0 
自己去写,有问题上来问。

I am a big fan of c plus plus.
2006-06-20 10:30
tianykun
Rank: 4
等 级:禁止访问
威 望:11
帖 子:3727
专家分:0
注 册:2005-11-13
收藏
得分:0 

离开这里,离开你的视野,归隐到属于我的地方,无论何处
2006-06-27 09:37
yuqiang
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2006-6-21
收藏
得分:0 

#include "stdafx.h"

#include "Shape.h"
#include "Triangle.h"
#include "RecTangle.h"

using namespace std;

void Compute(Shape &s)
{
cout<<"面积:"<<s.ComputeS()<<endl;
}

int _tmain(int argc, _TCHAR* argv[])
{
Triangle t(4,2);
RecTangle r(4,8);
Compute(t);
Compute(r);
return 0;
}
//shape 类
class Shape
{
public:
Shape(void);
~Shape(void);
virtual double ComputeS(void) = 0;
};
//三角形类
#include "shape.h"

class Triangle :
public Shape
{
public:
Triangle(int b,int h);
~Triangle(void);
double ComputeS();
private:
int bott;
int height;
};
#include "StdAfx.h"
#include ".\triangle.h"

Triangle::Triangle(int b,int h)
{
bott=b;
height=h;
}

Triangle::~Triangle(void)
{
}
double Triangle::ComputeS()
{
return (double)(bott*height/2);
}
//矩形类
#include "shape.h"

class RecTangle :
public Shape
{
public:
RecTangle(int w,int h);
~RecTangle(void);
double ComputeS();
private:
int width;
int height;
};
#include ".\rectangle.h"

RecTangle::RecTangle(int w,int h)
{
width=w;
height=h;
}

RecTangle::~RecTangle(void)
{
}
double RecTangle::ComputeS()
{
return (double)(width*height);
}

2006-07-03 11:07
快速回复:[求助]请教有关C++面向对象与过程的编程题目
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011838 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved