当前位置:编程学习 > C/C++ >>

c++编程题不会啊,快来帮忙

1、 编写一个程序,实现计算三角形、矩形和圆形三种图形的面积功能。并在主函数main()中,计算并输出底为10、高为20的三角形的面积;长为30、宽为15的矩形的面积,以及半径为25的圆形的面积。

提示:若用面向对象的编程方法,则可以抽象出一个基类shape,在类中定义一个虚函数,用来计算图形的面积。然后,分别为三角形、矩形和圆形定义三个派生类易做图、rectangle和circle。在main()函数中,定义抽象类的指针ps,并给此指针分别赋予指向易做图、rectangle和circle类的对象的指针,从而对对象进行操作。

2、 定义一个描述平面中点的类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()计算两点之间的距离,并输出显示。}

3、 编写程序,实现学生成绩的管理。输入若干个学生的数学、语文和英语成绩,求出每个学生各门课程的平均分、所有学生的数学平均分、语文平均分、英语平均分和所有学生所有课程的平均分。在程序中分别设计数学、语文和英语的成绩管理类Maths、Chinese和Engish,它们各自实现本门课程的成绩保存、输出和求平均分。设计学生类Student,作为三个成绩管理类的派生类,保存学生的姓名和本人平均成绩。在主函数main()实现如下功能:

1) 由用户输入学生人数;

2) 分别输入各学生的姓名和成绩信息;

3) 打印学生的姓名、各科成绩和平均分;

4) 打印各科所有学生的平均分和所有学生所有课目的平均分。

提示:比如输出的结果如下所示:

请输入学生人数:3

学生姓名:李强

答案:第一题:

#include <iostream>
#define PI 3.1415926
using namespace std;

class shape
{
public:
virtual float area(void)=0;
};
class 易做图 :public shape
{
float m_wdith,m_height;
public:
易做图()
{
m_wdith=m_height=0;
}
易做图(float wdith,float height)
{
m_wdith=wdith;m_height=height;
}
float area(void)
{
return m_wdith*m_height/2;
}
};
class rectangle :public shape
{
float m_wdith,m_height;
public:
rectangle()
{
m_wdith=m_height=0;
}
rectangle(float wdith,float height)
{
m_wdith=wdith;m_height=height;
}
float area(void)
{
return m_wdith*m_height;
}
};
class circle :public shape
{
float m_radii;
public:
circle()
{
m_radii=0;
}
circle(float radii)
{
m_radii=radii;
}
float area(void)
{
return m_radii*m_radii*PI;
}
};
void main()
{
shape *ps;
易做图 tr(10,20);
rectangle re(30,15);
circle ci(25);
ps=&tr;
cout<<ps->area()<<endl;

ps=&re;
cout<<ps->area()<<endl;

ps=&ci;
cout<<ps->area()<<endl;
}

靠,你问那么多,连个分都不给,谁会写代码给你啊

上一个:回溯法求0/1背包问题C++代码
下一个:如何先择c++进阶学习地教材!

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,