首页 > 编程语言 >C++课本第四章例题

C++课本第四章例题

时间:2023-04-20 16:45:57浏览次数:32  
标签:p2 p1 Point int void C++ 课本 例题

时钟类的完整例题

#include <iostream>
using namespace std;
class Clock{
    private :
        int hour,minute,second;
    public:
        void setTime(int hour=0,int minute=0,int second=0);
        void showTime();
};
void Clock::setTime(int newH,int newM,int newS)
{
    hour=newH;
    minute=newM;
    second=newS;
}
void Clock::showTime()
{
    cout<<hour<<"/"<<minute<<"/"<<second<<endl;
}
int main()
{
    Clock myclock;
    myclock.setTime();
    myclock.showTime();
    myclock.setTime(11,2,3);
    myclock.showTime();
}

 点和线的组合类例题

 1 #include <iostream>
 2 #include <cmath>
 3 using namespace std;
 4 class Point{
 5     public:
 6         Point(int xx=0,int yy=0){
 7             x=xx;
 8             y=yy;
 9         }
10         Point(Point &p);
11         int getx(){
12             return x;
13         }
14         int gety(){
15             return y;
16         }
17     private:
18         int x;
19         int y;
20 };
21 Point::Point(Point &p)
22 {
23     x=p.x;
24     y=p.y;
25     cout<<"copy"<<endl;
26 }
27 class Line{
28     public:
29         Line(Point xp1,Point xp2);
30         Line(Line &l);
31         double getline(){
32             return len;
33         }
34         private:
35             double len;
36             Point p1,p2;        
37 };
38 Line::Line(Point xp1,Point xp2):p1(xp1),p2(xp2){
39     cout<<"line"<<endl;
40     double x=static_cast<double> (p1.getx()-p2.getx());
41     double y=static_cast<double> (p1.gety()-p2.gety());
42     len=sqrt(x*x+y*y);
43 }
44 Line::Line(Line &l):p1(l.p1),p2(l.p2){
45     cout<<"copy line"<<endl;
46     len=l.len;
47 }
48 int main()
49 {
50     Point myp1(1,1),myp2(4,5);
51     Line line(myp1,myp2);
52     Line line2(line);
53     cout<<"the length of the line is:";
54     cout<<line.getline()<<endl;
55     cout<<"the length of the line2 is:";
56     cout<<line2.getline()<<endl;
57     return 0;
58 }

 

标签:p2,p1,Point,int,void,C++,课本,例题
From: https://www.cnblogs.com/Lyh3012648079/p/17334621.html

相关文章

  • C++黑马程序员——P185-188. STL初识
    P185.STL初识——STL的基本概念P186.STL初识——vector存放内置数据类型P187.STL初识——vector存放自定义数据类型P188.STL初识——容器嵌套容器P185.STL的基本概念STL,StandardTemplateLibrary,标准模板库STL:为了提高代码的复用性,提供一套标准的数据结构和算法STL......
  • c++ 静态编译和动态编译
      C++是一种高级编程语言,它支持两种不同的编译方式:静态编译和动态编译。下面是它们的介绍:静态编译  静态编译是将程序代码和库函数一起编译成一个可执行文件的过程。在静态编译过程中,程序代码和库函数的代码被组合在一起,形成一个独立的可执行文件,该文件可以在任何系统上运行......
  • C++ - UDP通信
    UDPUDP就比较简单了,步骤比tcp要少一些。连接过程图:  1).服务器1.初始化套接字库WORDwVersion;WSADATAwsaData;interr;​wVersion=MAKEWORD(1,1);2.创建套接字SOCKETsockSrv=socket(AF_INET,SOCK_DGRAM,0);3.绑定//SOCKADDR_INaddrSrv;省略了定......
  • C++ - TCP通信
    前言socket编程分为TCP和UDP两个模块,其中TCP是可靠的、安全的,常用于发送文件等,而UDP是不可靠的、不安全的,常用作视频通话等。如下图:头文件与库:#include<WinSock2.h>​#pragmacomment(lib,"ws2_32.lib")准备工作:创建工程后,首先右键工程,选择属性然后选择C/C++-预......
  • 使用 OpenCV4 和 C++ 构建计算机视觉项目:1~5
    原文:BuildingComputerVisionProjectswithOpenCV4andC++协议:CCBY-NC-SA4.0译者:飞龙本文来自【ApacheCN计算机视觉译文集】,采用译后编辑(MTPE)流程来尽可能提升效率。当别人说你没有底线的时候,你最好真的没有;当别人说你做过某些事的时候,你也最好真的做过。一、Open......
  • c++输出格式控制
    一.控制符需要<iomanip>头文件常用:1.保留几位有效数字:setpricision(),括号里是保留的位数2.保留几位小数:setiosflags(ios::fixed)<<setpricision(),括号里是保留的位数(注意前面半句会影响此后所有setpricision()的用法,都变成保留小数位数,不只是这一句)(直接把前半句改成......
  • 刚开始如何模仿写C/C++程序的Makefile
    对于一般工程的C/C++程序,在利用Makefile文件对其进行编译遵守下面两个规则即可:即编写的Makefile文件中,不论最后的是库文件还是可执行文件。gcc通过-c选项,将所有的文件都编译成目标代码文件即可.o文件。之后通过将所有的.o文件链表得到一个可执行文件,或者库文件。......
  • 贪心算法基础及leetcode例题
    理论本质:找到每个阶段的局部最优,然后去推导得到全局最优两个极端:常识&&很难:很多同学通过了贪心的题目,但都不知道自己用了贪心算法,因为贪心有时候就是常识性的推导,所以会认为本应该就这么做!套路:贪心没有套路,说白了就是常识性推导加上举反例做题的时候,只要想清楚局部最优......
  • 打卡 上课铃响之后 - C/C++ 多态
    如本章开篇所述,当小学里的上课铃响之后,学生(Student)、教师(Teacher)和校长(Principal)会对同一个消息表现出不同的行为。请设计Person、Student、Teacher以及Principal类,合理安排他们之间的继承关系并将所有类的bellRing()及析构函数设计为虚函数,使得下述代码可以正常执行并产生期望的......
  • 第三章部分例题(3)
    例3-7题目描述:输入两个整数,求他们的平方和。设计思路:1.设计一个函数用于求一个数的平方。2.输入两个整数分别求出平方和。3.将他们的平方和相加。流程图: 代码实现:#include<iostream>#include<cmath>usingnamespacestd;intfun(inta){returnpow(a,2);}in......