练习案例1:设计立方体类

设计立方体类(Cube)

求出立方体的面积和体积

分别用全局函数和成员函数判断两个立方体是否相等。

#include <iostream>
using namespace std;
//立方体类设计
//1.创建立方体类
//2.设计属性
//3.设计行为 获取立方体的面积和体积
//4.分别利用全局函数和成员函数 判断两个立方体是否相等
class Cube
{
public://设置长void setL(int l){m_L=l;}//获取长int getL(){return m_L;}//设置宽void setW(int w){m_W=w;}//获取宽int getW(){return m_W;}//设置高void setH(int h){m_H=h;}//获取高int getH(){return m_H;}//获取立方体的面积int calculateS(){return 2*(m_L*m_W+m_L*m_H+m_W*m_H);}//获取立方体的体积int calculateV(){return m_L*m_W*m_H;}//利用成员函数判断两个立方体是否相等bool isSameByClass(Cube& c){if(m_L==c.getL() && m_W==c.getW() && m_H==c.getH()){return true;}}
private :int m_L;  //长int m_W;  //宽int m_H;  //高
};
//利用全局函数判断 两个立方体是否相等
bool isSame(Cube& c1,Cube& c2){if(c1.getL()==c2.getL() && c1.getW()==c2.getW() && c1.getH()==c2.getH()){return true;}
}
int main() {//创建一个立方体对象Cube c1;c1.setL(10);c1.setW(10);c1.setH(10);cout<<"c1的面积为:"<<c1.calculateS()<<endl;cout<<"c1的体积为:"<<c1.calculateV()<<endl;//创建第二个立方体Cube c2;c2.setL(10);c2.setW(10);c2.setH(10);//利用全局函数判断的bool ret=isSame(c1,c2);if(ret){cout<<"全局函数判断:c1和c2是相等的"<<endl;}else{cout<<"全局函数判断:c1和c2是不相等的"<<endl;}//利用成员函数判断ret=c1.isSameByClass(c2);if(ret){cout<<"成员函数判断:c1和c2是相等的"<<endl;}else{cout<<"成员函数判断:c1和c2是不相等的"<<endl;}system("pause");return 0;
}



练习案例2:点和圆的关系

设计一个圆形类(Circle),和一个点类(Point),计算点和圆的关系。

#include <iostream>
using namespace std;
//点和圆的关系案例
//点类
class Point{
public:void setX(int x){m_X=x;}int getX(){return m_X;}void setY(int y){m_Y=y;}int getY(){return m_Y;}
private:int m_X;int m_Y;
};
//圆类
class Circle{
public:void setR(int r){m_R=r;}int getR(){return m_R;}void setCenter(Point center){m_Center=center;}Point getCenter(){return m_Center;}
private:int m_R; //半径//在类中可以让另一个类 作为本类的一个成员Point m_Center;
};
//判断点和圆的关系
void isInCircle(Circle& c,Point& p){//计算两点距离的平方int distance=(c.getCenter().getX()-p.getX())*(c.getCenter().getX()-p.getX())+(c.getCenter().getY()-p.getY())*(c.getCenter().getY()-p.getY());//计算半径的平方int rDistance=c.getR()*c.getR();//判断关系if(distance == rDistance){cout<<"点在圆上"<<endl;}else if(distance > rDistance){cout<<"点在圆外"<<endl;}else{cout<<"点在圆内"<<endl;}
}int main(){//创建圆Circle c;c.setR(10);Point center;center.setX(10);center.setY(0);c.setCenter(center);//创建点Point p;p.setX(10);p.setY(11);isInCircle(c,p);system("pause");return 0;
}



point.h

#pragma once
#include <iostream>
using namespace std;
//点类
class Point{
public:void setX(int x);int getX();void setY(int y);int getY();
private:int m_X;int m_Y;
};

point.cpp

#include "point.h"
void Point::setX(int x){m_X=x;}
int Point::getX(){return m_X;
}
void Point::setY(int y){m_Y=y;
}
int Point::getY(){return m_Y;
}

circle.h

#pragma once
#include <iostream>
using namespace std;
#include "point.h"
//圆类
class Circle{
public:void setR(int r);int getR();void setCenter(Point center);Point getCenter();
private:int m_R; //半径//在类中可以让另一个类 作为本类的一个成员Point m_Center;
};

circle.cpp

#include "circle.h"
void Circle::setR(int r){m_R=r;
}
int Circle::getR(){return m_R;
}
void Circle::setCenter(Point center){m_Center=center;
}
Point Circle::getCenter(){return m_Center;
}

stars.cpp

#include <iostream>
using namespace std;
#include "circle.h"
#include "point.h"
//判断点和圆的关系
void isInCircle(Circle& c,Point& p){//计算两点距离的平方int distance=(c.getCenter().getX()-p.getX())*(c.getCenter().getX()-p.getX())+(c.getCenter().getY()-p.getY())*(c.getCenter().getY()-p.getY());//计算半径的平方int rDistance=c.getR()*c.getR();//判断关系if(distance == rDistance){cout<<"点在圆上"<<endl;}else if(distance > rDistance){cout<<"点在圆外"<<endl;}else{cout<<"点在圆内"<<endl;}
}int main(){//创建圆Circle c;c.setR(10);Point center;center.setX(10);center.setY(0);c.setCenter(center);//创建点Point p;p.setX(10);p.setY(11);isInCircle(c,p);system("pause");return 0;
}

设计立方体类(求出立方体的面积和体积 分别用全局函数和成员函数判断两个立方体是否相等)相关推荐

  1. 使用类求出三个长方体的体积

    内容:使用类求出三个长方体的体积 目的:初步掌握类和对象 程序代码: /* * 程序的版权和版本声明部分: * Copyright (c) 2013, 烟台大学计算机学院 * All rights r ...

  2. c++ 实现计算立方体面积体积 并 判断两个立方体是否相等 (类和对象学习)

    1.设计一个类 2.在私有权限内写立方体的属性 3.在公共权限内对立方体的属性进行可读可写操作 4.在类外定义一个bool类型的全局函数判断两个立方体是否相等 判断标准为:长宽高分别相等 code / ...

  3. C++ 判断两个立方体是否相等

    使用面向过程的方法: #include <iostream>using namespace std;class Cube{private:int m_a;int m_b;int m_c;p ...

  4. C语言试题二十二之定义了3×3的二维数组,并在主函数中赋值。函数的功能使求出数组周边元素的平均值并作为函数值返回给主函数中的s。

    1. 题目 定义了3×3的二维数组,并在主函数中赋值.函数的功能使求出数组周边元素的平均值并作为函数值返回给主函数中的s. 2 .温馨提示 C语言试题汇总里可用于计算机二级C语言笔试.机试.研究生复试 ...

  5. C语言编程>第十一周 ⑥ 某学生的记录由学号、5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中。

    例题:某学生的记录由学号.5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出.请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中.请自己定义正确的形参.. 例如,若 ...

  6. 某学生的记录由学号、5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中。

    例题:某学生的记录由学号.5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出.请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中.请自己定义正确的形参.. 例如,若 ...

  7. 面向对象——案例练习(3)判断两个立方体是否相等

    利用全局函数实现 #define _CRT_SECURE_NO_WARNINGS #include <iostream>using namespace std;class Cube { p ...

  8. 设计一个日期类(CDate),属性为年、月、日,成员函数为设置当前日期setDate(…)、当前日期加一天increaseDate()和显示日期showDate()

    #include <iostream> using namespace std; class CDate {//定义一个名为CDate的类 public:     void setDate ...

  9. c++ 求四边形面积和周长_C++中运用类求一个矩形的面积和周长

    题目是这样的:/*定义一个矩形类Rectangle,包含:保护数据成员:doubleLength;//矩形的长doubleWidth;//矩形的宽公有成员函数:doubleArea();//计算矩形的 ...

最新文章

  1. 深入浅出任务队列机制,非常浅
  2. 全桥整流等效负载阻抗是多少?
  3. MapReduce的并行执行效率
  4. java和c 进行des_c语言的des加密,怎么用java解密
  5. Android Studio获得sha1码
  6. kafka 名词解释及原理解析过程(三)
  7. 通过调试对WriteFile()API的钩取
  8. DESUtils 加解密时 Given final block not properly padded bug小记
  9. 大数据集群搭建之节点的网络配置过程(二)
  10. 沪江、外研社、新东方联合组建海外出版公司,AI 背景下的出版业将去何处?...
  11. 不要迷失在技术的海洋中(转)
  12. 装tensorflow未果
  13. PIC18单片机移植FreeModbus
  14. oracle数据库 date函数,Oracle 函数(处置Date)
  15. Netty03-进阶
  16. 3DMax2021建模入门篇
  17. 堆叠注入-强网杯2019随便注
  18. 如何使用计算机中对数函数,excel对数函数LN,LOG函数等. 使用示例说明excel如何找到对数...
  19. 女孩子有什么颜值高的蓝牙耳机推荐?双12五款高音质游戏蓝牙耳机分享
  20. docker-compose.yml修改volumes后重启不生效

热门文章

  1. 推荐一个十分好看的开源博客系统
  2. java selenium后报错Element not found in the cache元素定位要重新赋值之前的定义
  3. 新手入门 keil MDK5 建立STM32工程
  4. 【Java】实战Java虚拟机之五“开启JIT编译”
  5. Android Bluetooth 文件接收路径修改方法
  6. msm8916 dt选用规则
  7. WINCE6.0+S3C2443下的activesync问题
  8. spring框架中JDK和CGLIB动态代理区别
  9. 三步搭建Spring Cloud 服务注册
  10. .net运行项目的几种形式