news 2026/6/10 11:45:36

bupt c++慕课测试与作业9章

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
bupt c++慕课测试与作业9章

定义复数类,数据成员包括实部和虚部;成员函数有构造函数,带默认参数值(1,1)。以成员函数或友元函数的方式重载+运算符,实现两个复数相加的功能。还有一个成员函数,输出复数a+bi。
编写主程序测试复数相加,输入4个整数,分别作为两个复数的实部和虚部,如果第3个整数为-1000,则使用输入的前两个整数构造一个复数,利用默认参数构造另一个复数,并相加。最后输出两个复数之和。(2分)
方法1 友元函数
#include <iostream>
#include <cstring>

using namespace std;

class complex_num
{
public:
complex_num(int i=1,int j=1)
{
r=i;c=j;
}
friend complex_num operator +(complex_num &a,complex_num &b)
{
return complex_num(a.r+b.r,a.c+b.c);
}
void show()
{
cout<<r<<'+'<<c<<'i'<<endl;
}
private:
int r,c;
};
int main()
{ int a,b,c,d;
cin>>a>>b>>c>>d;
complex_num c1(a,b),c2(c,d),c3,c4;
if(c==-1000)
{
c4=c1+c3;
c4.show();
}

else{
c3=c1+c2;
c3.show();
}

}
方法2 成员函数
#include <iostream>
#include <cstring>

using namespace std;

class complex_num
{
public:
complex_num(int i=1,int j=1)
{
r=i;c=j;
}
complex_num operator +(complex_num &a)
{
return complex_num(a.r+r,a.c+c);
}
void show()
{
cout<<r<<'+'<<c<<'i'<<endl;
}
private:
int r,c;
};
int main()
{ int a,b,c,d;
cin>>a>>b>>c>>d;
complex_num c1(a,b),c2(c,d),c3,c4;
if(c==-1000)
{
c4=c1+c3;
c4.show();
}

else{
c3=c1+c2;
c3.show();
}

}
定义屏幕上的坐标点point为类类型,数据成员包括x坐标、y坐标、颜色,均为私有成员;成员函数有构造函数,带默认参数值(0,0,255),会输出提示信息“point(x,y,color)”,其中x,y,color输出实际值。还有getx和gety以及getColor函数,分别返回3个数据成员的值,析构函数中输出提示信息“point~~~”。
定义矩形类,数据成员包括左上角的坐标点(内嵌point类对象),还有矩形的长、宽;成员函数有构造函数,会输出提示信息“rect”,信息输出函数,输出矩形的x坐标、y坐标、长、宽,析构函数中输出提示信息“rect~~~”。
编写主程序,读取用户输入的x坐标、y坐标、长、宽的值,定义矩阵类对象,然后调用信息输出函数,测试类的组合应用。(3分)

#include <iostream>
#include <cstring>

using namespace std;

class pointer{
public:
pointer(int xx=0,int yy=0,int ccolor=255)
{
x=xx;y=yy;color=ccolor;
cout<<"point("<<xx<<','<<yy<<','<<color<<')'<<endl; }
int getx()
{
return x;
}
int gety()
{
return y;
}
int getcolor()
{
return color;
}
~pointer()
{
cout<<"point~~~"<<endl;
}

private:
int x,y,color;
};

class rec{
public:
rec(int xx,int yy,int ll,int ww):p1(xx,yy)
{
l=ll;w=ww;
cout<<"rect"<<endl;
}
void show()
{
cout<<p1.getx()<<','<<p1.gety()<<','<<l<<','<<w<<endl;
}
~rec()
{
cout<<"rect~~~"<<endl;
}
private:
pointer p1;
int l;
int w;
};
int main()
{ int a,b,c,d;
cin>>a>>b>>c>>d;
rec myrec(a,b,c,d);
myrec.show();

}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/6 11:17:00

Java毕业设计-基于springboot开发的医院信管系统,从零到一构建项目,收藏这篇足够了

文章目录 前言一、毕设成果演示&#xff08;源代码在文末&#xff09;二、毕设摘要展示 1.开发说明2.需求分析3、系统功能结构 三、系统实现展示 1、系统功能模块2、管理员功能模块3、 医生功能模块 四、毕设内容和源代码获取总结 Java毕业设计-基于springboot开发的医院信管…

作者头像 李华
网站建设 2026/6/10 15:58:03

多线程核心:互斥与同步

在多线程开发中&#xff0c;互斥和同步是解决 “资源竞争” 与 “执行顺序” 问题的核心技术&#xff0c;本文结合原理 代码 图示详细解析。一、互斥&#xff08;Mutex&#xff09;&#xff1a;临界资源的排他性访问1. 基本概念临界资源&#xff1a;多线程中会被 “读写操作”…

作者头像 李华
网站建设 2026/6/10 15:50:03

选对老师,一次过!高项备考别再自己硬扛了!

选对老师&#xff0c;真的能改变备考的轨迹&#xff01;作为一个过来人&#xff0c;我太懂那种面对厚厚教材和抽象论文的无助感了。自己埋头苦学了大半年&#xff0c;知识点像一盘散沙&#xff0c;案例分析找不到逻辑&#xff0c;论文更是无从下手&#xff0c;差点就想放弃今年…

作者头像 李华
网站建设 2026/6/10 15:57:05

一文精通大数据行式存储的性能优化

一文精通大数据行式存储的性能优化&#xff1a;从原理到实战的全链路拆解 1. 引入与连接&#xff1a;为什么行式存储还需要优化&#xff1f; 1.1 一个真实的痛点场景 某电商平台的订单系统遇到了棘手问题&#xff1a; 运营同学要查用户「小A」最近30天的所有订单记录&#xff0…

作者头像 李华
网站建设 2026/6/10 15:58:10

健康管理实训室:解锁康养技能提升新路径

一、认知与评估起点&#xff1a;构建健康管理的专业基石健康管理实训室的首要环节&#xff0c;是培养学生精准的评估与认知能力。实训室内配备的老年综合评估系统、心理自助服务系统等专业工具&#xff0c;为学生提供了标准化的健康评估操作平台。通过这些系统&#xff0c;学生…

作者头像 李华
网站建设 2026/6/10 12:18:15

29、Linux文件系统管理与应用安装指南

Linux文件系统管理与应用安装指南 1. 自动化备份准备 要进行自动化备份,每天只需在磁带驱动器中放入新磁带,并为每盘磁带贴上合适的标签即可,这样就完成自动化备份的基本准备。 2. 访问DOS/Windows文件系统 2.1 挂载DOS/Windows磁盘分区 在Linux中挂载DOS/Windows硬盘分…

作者头像 李华