好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

C++实验--类和对象——普通数学题计算.doc

9页
  • 卖家[上传人]:新**
  • 文档编号:472531641
  • 上传时间:2023-09-17
  • 文档格式:DOC
  • 文档大小:49KB
  • / 9 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 精品文档,仅供学习与交流,如有侵权请联系网站删除实验报告实验九 类和对象(1)一、实验目的1.   掌握类的概念、类的定义格式、类与结构的关系、类的成员属性和类的封装性;2.  掌握类对象的定义;3.  理解类的成员的访问控制的含义,公有、私有和保护成员的区别;4.  掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义和重载构造函数能够根据给定的要求定义类并实现类的成员函数二、实验内容1. 输入以下程序,并写出程序的输出结果定义一个描述三角形的类Tri,具体要求如下:(1)私有数据成员double a, b, c: 三角形的三边2) 公有成员函数Tri(double x, double y, double z):构造函数,用x, y, z 初始化a, b,c, 对指定的对象初始化double Peri( ) : 求三角形的周长double Area( ): 求三角形的面积void Show( ): 输出三角形的各种参数(边长、周长、面积)3) 在主程序中定义两个三角形对象:三角形tri1, 边长分别为3,4,5,三角形tri2,边长分别为5,6,7,用构造函数初始化这两个对象a,然后输出这两个三角形的各种参数。

      将文件命名为S15_1.cppinclude#includeclass Tri{ double a,b,c; //定义三角形的三边public: Tri(double x, double y, double z) //构造函数,初始化三边 { a=x; b=y;c=z; } double Peri() //返回三角形的周长 { return (a+b+c); } double Area() //返回三角形的面积 { double s=Peri()/2; double area=sqrt(s*(s-a)*(s-b)*(s-c)); return area; void Show() //输出三角形的参数 { cout<<"三角形的边长: "<

      2. 根据程序要求,完善程序后输入源程序,编译连接,并写出运行结果如果某个自然数除了1和它本身外还有其他因子,则这个自然数就是合数(非素数)试定义一个类NUM,从3开始向上试探找出n个连续的自然数,且它们都是合数当找到第一组连续n个合数后,即停止查找具体要求如下:(1) 私有数据成员:int n : 存放满足条件的连续自然数的个数int *p: 根据n的值申请一个动态数组用来存放求出的满足条件的n个自然数2) 公有成员函数NUM(int n1):构造函数,用n1初始化n,根据n的值申请动态数组空间,使p指向该动态数组空间int yes(int x):判定x是否为合数如果是,返回1,否则返回0void fun(): 从3开始向上试探找出n个连续的自然数,且它们都是合数,并依次放入动态数组void print(): 输出满足条件的n个合数~NUM(): 析构函数,释放动态数组所占用的存储空间3) 在主函数中定义一个NUM类的对象num, 求出10个连续的合数然后通过对象num调用成员函数求出10个连续的合数,并输出计算结果将文件命名为S15_2.cppincludeclass NUM{ //定义数据类NUMprivate: int n; int *p;public: NUM(int n1) //构造函数, 用n1初始化n, 并且用p动态开辟n个整数空间, 存放符合条件的合数 { n=n1; p=new int[n]; //连续开辟n个整型空间, 将整型空间的首地址赋给p int yes(int x) //判断x是否为合数, 若是返回1, 否则返回0 { for(int i=2;i<=x/2;i++) //i从2循环到x/2, 依次判断x能否整除i if(x%i==0) //若能整除, 说明x是合数 return 1; //直接返回1 return 0; //循环结束, 说明不能整除, 不是合数, 返回0 void fun(void) //寻找n个连续的合数 { int j; for(int i=3; 1 ;i++)//从3开始向上找, 因为未给上限, 所以一直循环(循环条件永远满足) { j=0; //对连续的合数计数, 所以在每次寻找之前清零 while(yes(i)==1&&j

      3. 仿照样例程序编写程序定义一个字符串类STR,从左到右对字符串中每个字符删除其后所有相同的字符,只留下第一次出现的那一个例如,若字符串为"cocoon",删除重复出现的字符后,其结果是字符串"con"具体要求如下:(1) 私有数据成员:char *s1: 指向原字符串,存放字符串的空间需动态分配char *s2: 指向结果字符串,存放字符串的空间需动态分配2) 公有成员函数STR(char *str):构造函数,用str初始化s1,动态分配s1和s2指向的空间void delsame( ):删除重复出现的字符void show( ):输出原字符串和结果字符串~STR( ):析构函数,释放动态分配的存储空间3) 在主函数中定义一个STR类的对象test, 用字符串"concoon"初始化test, 通过调用成员函数完成删除工作,输出删除前后的两个字符串代码:#include#include using namespace std;class STRprivate: char *s1; char *s2;public: STR(char *str):s1(str) s2 = new char[strlen(str)+1]; //删除字符串里相同的元素void delsame() char *s1_temp = s1; char *s2_temp = s2; while (*s1_temp != '\0') char *t = s1_temp; bool flag = 0; //不定义flag也可以!后面就可以用break跳出循环,if里面直接写不相等条件就行! while (*t != '\0') ++t; if (*t == *s1_temp) flag = 1; if (flag == 0) //如果s1_temp后面的字符都跟s1_temp不相等,就放入s2 *s2_temp++ = *s1_temp; ++s1_temp; *s2_temp = '\0'; void show(); ~STR(){delete []s2;} //输出原来与删除后的数组void STR::show() cout<<"原字符串为:"<

      定义一个圆盘类Circle,用20个随机数组成一个圆(首尾相接),分别求出连续的四个数之和为最大的四个数及其和值)以及连续的四个数之和为最小的四个数(输出整个数列、最大、最小的四个数及其和值)具体要求如下:(1) 私有数据成员int num[20]: 存放生成的20个随机数int Max[4]: 存放20个随机数中连续4个数之和中最大的那4个连续的数int Min[4]: 存放20个随机数中连续4个数之和中最小的那4个连续的数int sum_max: 存放20个随机数中连续4个数之和中最大的和int sum_min: 存放20个随机数中连续4个数之和中最小的和(2) 公有成员函数:Circle(): 构造函数, 用20个随机数初始化圆盘中的num数组void Find_Max(): 圆盘类的主要操作, 寻找符合条件(和为最或最小)的连续的4个数void Show(void): 输出圆盘类的整个数列,最大、最小的四个数及其和值(3) 在主函数中定义一个Circle类的对象cir, 用20个随机数初始化该对象cir,通过调用成员函数完成题目要求的任务将文件命名为S15_4.cpp。

      要求:代码:#include#includeusing namespace std;class Circlepublic:Circle();// 圆盘类的主要操作, 寻找符合条件(和为最或最小)的连续的4个数 void Find_Max();void Find_Min();void Show(void);// 输出圆盘类的整个数列,最大、最小的四个数及其和值private:int num[20];//: 存放生成的20个。

      点击阅读更多内容
      相关文档
      【初中语文】第二单元测试卷+统编版语文七年级上册.docx 【初中数学】第三章+三视图与表面展开图+同步习题+浙教版数学九年级下册.docx 【初中数学】第4章+图形与坐标+单元检测卷+浙教版数学八年级上册++.docx 【初中数学】因式分解+自主达标测试题+华东师大版八年级数学上册+.docx 【初中语文】第三单元+课外古诗词四首理解性默写+++教师版+学生版+统编版语文九年级上册.docx 【初中语文】第一单元测试卷+统编版语文九年级上册.docx 【初中数学】第二章+直线与圆的位置关系+同步习题+浙教版数学九年级下册.docx 【初中数学】乘法公式+自主学习达标测试题+华东师大版八年级数学上册++.docx 【初中语文】第三单元检测卷+统编版语文八年级上册.docx 广东省茂名市2025年九年级上学期月考物理试题附答案.docx 甘肃省定西市2025年九年级上学期月考物理试题附答案.docx 苏教版(2024)新教材八年级生物上册第五单元第13章第二节《血液循环》提升讲义(含答案).doc 湖南省岳阳市2025年八年级上学期月考物理试题附答案.docx 广东省珠海市2025年八年级上学期第一次月考物理试题附答案.docx 仁爱版(2024)新教材八年级英语上册Unit 3 课时7 Reading for Writing 分层作业.docx 仁爱版(2024)新教材八年级英语上册Unit 3 Sound Body Sound Mind 身心健康(话题阅读精练).docx 山东省潍坊市2025年中考化学真题含同步解析答案.pptx 江苏省盐城市2025年中考物理试卷附同步解析答案.docx 广西河池市2025年九年级上学期月考物理试题附答案.docx 广东省广州市2025年九年级上学期月考物理试题附答案.docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.