一、实验目的
1、掌握类和对象的定义和使用。
2、掌握友元函数的定义和使用。
3、理解并掌握常量的定义和使用。
4、掌握静态的定义和使用。

二、实验内容
1、给定三个数21,15,22,设计内联函数int max(int a, int b)求两个数的最大数,输出结果“在21 15 22之中最大的是:22”。

 1 #include<iostream>
 2 using namespace std;
 3
 4 inline int max(int a,int b);
 5
 6 int main()
 7 {
 8     int a=21,b=15,c=22,d,e;
 9     d=max(a,b);
10     e=max(d,c);
11     cout<<"在21,15,22之中最大的是:"<<e<<endl;
12     return 0;
13 }
14
15 int max(int a,int b)
16 {
17    return (a>b)?a:b;
18 }

2、设计重载函数overload,如果输入整数5,则输出5,如果输入字符'a',则输出字符'b'。

 1 #include<iostream>
 2 using namespace std;
 3
 4 void overload (int a);
 5 void overload (char b);
 6
 7 int main()
 8 {
 9     int x;
10     char y;
11     cout<<"请输入X的值:";
12     cin>>x;
13     overload(x);
14     cout<<endl<<"请输入y的值:";
15     cin>>y;
16     overload(y);
17     return 0;
18 }
19
20 void overload(int a)
21 {
22     cout<<"你输入的数值为:"<<a<<endl;
23 }
24
25 void overload(char b)
26 {
27     char i;
28     i=b+1;
29     cout<<"你输入的字符为:"<<i<<endl;
30 }

3、定义一个三角形类,用成员函数计算其周长、面积。

 1 #include<iostream>
 2
 3 using namespace std;
 4 #include<math.h>
 5
 6 class triangle
 7 {
 8     private:
 9     int a,b,c;
10
11     public:
12     triangle(int x=0,int y=0,int z=0);
13     static void perimeter(triangle a);
14     static void area(triangle b);
15 };
16
17 int main()
18 {
19     triangle  M(3,4,5);
20     M.perimeter(M);
21     M.area(M);
22     return 0;
23 }
24
25 triangle::triangle(int x,int y,int z)
26 {
27     a=x;
28     b=y;
29     c=z;
30 }
31
32 void triangle::perimeter(triangle a)
33 {
34     int h;
35     h=a.a+a.b+a.c;
36     cout<<"三角形周长为:"<<h<<endl;
37 }
38
39 void triangle::area(triangle b)
40 {
41     float x,s;
42     x=(b.a+b.b+b.c)/2;
43     s=sqrt(x*(x-b.a)*(x-b.b)*(x-b.c));
44     cout<<"三角形面积为:"<<s<<endl;
45 }

4、定义一个矩形类,用成员函数其周长、面积。

 1 #include<iostream>
 2 using namespace std;
 3
 4 class rectangle
 5 {
 6     private:
 7     int a,b;
 8     public:
 9     rectangle(int x=0,int y=0);
10     void perimeter(rectangle i);
11     void area(rectangle j);
12 };
13
14 int main()
15 {
16     rectangle ob1(3,5);
17     ob1.perimeter(ob1);
18     ob1.area(ob1);
19     return 0;
20 }
21
22 rectangle::rectangle(int x,int y)
23 {
24     a=x;
25     b=y;
26 }
27
28 void rectangle::perimeter(rectangle i)
29 {
30     int a;
31     a=2*(i.a+i.b);
32     cout<<"矩形的周长为:"<<a<<endl;
33 }
34
35 void rectangle::area(rectangle j)
36 {
37     int b;
38     b=j.a*j.b;
39     cout<<"矩形的面积为:"<<b<<endl;
40 }

5、定义一个圆类,用成员函数其周长、面积。

 1 #include<iostream>
 2 using namespace std;
 3
 4 class circle
 5 {
 6     private:
 7     int r;
 8     public:
 9     circle(int x);
10     void perimeter(circle a);
11     void area(circle b);
12 };
13
14 int main()
15 {
16     circle ob1(1);
17     ob1.perimeter(ob1);
18     ob1.area(ob1);
19     return 0;
20 }
21
22 circle::circle(int a)
23 {
24     r=a;
25 }
26
27 void circle::perimeter(circle a)
28 {
29     float z;
30     z=2*3.14*a.r;
31     cout<<"圆的周长为:"<<z<<endl;
32 }
33
34 void circle::area(circle b)
35 {
36     float c;
37     c=3.14*b.r*b.r;
38     cout<<"圆的面积为:"<<c<<endl;
39 }

转载于:https://www.cnblogs.com/xautlmx/p/3441386.html

面向对象实验一(类与对象)相关推荐

  1. 面向对象程序设计实验 - 实验2 类和对象:类的构建

    实验二 类和对象--类的构建 目录 实验二 类和对象--类的构建 2.1 实验目的 2.2 实验内容 2.2.1程序阅读 2.2.2 程序设计 2.3思考题 2.1 实验目的 1.类的定义: 2.类对 ...

  2. 实验四 类和对象;类的继承和派生;多态性; 接口;构造器应用

    实验四 类和对象:类的继承和派生:多态性: 接口:构造器应用 一.实验目的 1. 掌握类与对象的关系: 2. 掌握类的定义: 3. 掌握对象的声明及使用: 4. 掌握构造方法的概念及调用时机: 5. ...

  3. Python快速入门(八)面向对象1:类、对象和封装

    Python快速入门(八)面向对象1:类.对象和封装 1.类和对象 1)类的定义 2)对象的定义 3)类和对象的关系 4)类的设计 2.第一个面向对象案列 代码1 代码2 3.设置对象属性 4.ini ...

  4. Java_面向对象基础(类、对象、方法和构造函数)

    Java的面向对象基础(类.对象.方法和构造函数) 面向对象的基本概念 面向对象的设计思想 什么是类 什么是对象 类的定义 设计面向对象的例子 步骤一:设计动物这个类 步骤二:创建具体的动物 步骤三: ...

  5. 八、Java面向对象编程(类、对象、方法、重载、可变参数、作用域、构造器、this本质)

    文章目录 Java面向对象编程(类.对象.方法.重载.可变参数.作用域.构造器.this本质) 一.类与对象 1. 类与对象的引出 2. 使用现有技术解决 3. 现有技术解决的缺点分析 4. 类与对象 ...

  6. 淮阴工学院C语言考试题库,淮阴工学院c++实验报告实验九类和对象

    <淮阴工学院c++实验报告实验九类和对象>由会员分享,可在线阅读,更多相关<淮阴工学院c++实验报告实验九类和对象(9页珍藏版)>请在装配图网上搜索. 1.淮阴工学院c+实验报 ...

  7. JAVA类与对象tank_实验四 类与对象

    实验四类与对象 1.实验目的 1.使用类来封装对象的属性和行为: 2.掌握对象的组合以及参数传递: 3.掌握类变量与实例变量,以及类方法与实例方法的区别 2.实验内容 1.参考实验指导书中P17-25 ...

  8. java类与对象实验_JAVA类与对象实验报告

    <JAVA类与对象实验报告>由会员分享,可在线阅读,更多相关<JAVA类与对象实验报告(6页珍藏版)>请在人人文库网上搜索. 1.面向对象程序设计实验报告实验三.类与对象(1) ...

  9. 【C++实验】类和对象(两个分数相加并且化简)

    类和对象进一步讨论 面向对象程序设计中的几个名词: st1是对象 display()是方法 st1.dispaly()是消息 构造函数:对类的成员进行初始化(为对象分配内存) 带参数/使用默认参数的构 ...

  10. 22 面向对象 名称空间 类与对象

    面向对象 重点:面向对象的核心体现是将数据和处理数据的程序封装到对象中 Python语言:面向对象的语言 Python 用面向过程与面向对象两种方式解决问题 函数与方法: 都是解决问题的功能 函数(属 ...

最新文章

  1. 序列密码体制(python随机数密码,RC4,线性反馈移位寄存器
  2. it招聘的一些门道与招聘数据分析(持续更新)
  3. Java顶尖程序员需要看的书
  4. php redis微信发红包,高阶篇二 使用Redis队列发送微信模版消息
  5. fedora 用安装 DVD 建立本地 yum 源
  6. mysql升级准备工作
  7. .net Remoting(1)——起点,从示例做起
  8. python : class定义中的:__dict__,__setattr__,__getattribute__,__getattr__,
  9. 7.RabbitMQ实战 --- warren和Shovel:故障转移和复制
  10. 如何搭建一个属于自己的在线wiki文档系统?
  11. ps时间轴制作渐隐动态签名
  12. DbVisualizer 10破解之后,在输入框使用光标无法准确定位字符
  13. C语言 打飞机 小游戏
  14. 人工智能为什么要做全栈工程师
  15. vant 引用Lazyload报错Lazyload
  16. 华为手机卡在升级界面_华为通用强制升级教程 华为官方卡刷教程
  17. MP530注墨 连供及传真的心得体会
  18. pwm控制电机转速原理浅析
  19. 窥探React - 源码分析
  20. mysql实现悲观锁语句_mysql悲观锁总结和实践

热门文章

  1. 解决Centos6.5虚拟机上网问题
  2. 将普通路由器设置成微信连WiFi路由器的方法
  3. SharePoint 2013 Designer系列之数据视图筛选
  4. 话里话外:转帖:制约中小企业发展三大管理问题与SaaS的成功要素
  5. linux 无锁队列覆盖问题,无锁队列杂谈
  6. Django1.6 用Form实现注册登录注销修改密码(含代码!)
  7. Android开发学习笔记:Gallery和GridView浅析
  8. setup hadoop 1.2.1 on Mac
  9. 基于面向服务体系架构(SOA)和面向资源体系架构(ROA)的业务组件模型
  10. Winform开发框架之插件化应用框架实现