当前位置: 首页 > news >正文

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();

}

http://www.cnnetsun.cn/news/114012.html

相关文章:

  • 2025年,国内外最火的10款降AI率工具亲测!(持续更新)
  • 基于大数据的餐饮食材管理系统的设计与实现开题报告
  • 基于大数据的交通信号智能控制系统的设计与实现开题报告
  • 基于大数据的交通信号智能控制系统的设计与实现任务书
  • 蜘蛛池站点优化思路分享
  • 2025 OA 选型关键看这 4 点:集成、灵活、安全、易用,附高性价比系统清单
  • 图神经网络与pytorch
  • Xiaomi 商城页面布局(部分)
  • FPGA以太网升级程序:便捷qspi Flash升级,具备校验功能,适用于Xilinx 7系列...
  • 运料小车装卸料控制:西门子1200PLC与TP700触摸屏联机仿真博途16
  • S32K311启动过程中,向量表重定向
  • 从蓝图到产线:高效产品信息传递的桥梁建设
  • 时间复杂度
  • 网站建设公司怎么选?2025年网站设计制作公司推荐指南
  • 今天咱们来聊一个挺有意思的优化算法改进——基于透镜成像反向策略的海洋捕食者算法。这个改进版本在原始MPA基础上搞了点新花样,咱们直接上干货看代码实现
  • Gitee:本土化DevOps平台如何重塑中国开发者生态
  • vCenter Server 8.0U3h 新增功能简介
  • Cisco NX-OS 10.6(2)F 发布 - 数据中心网络操作系统
  • Ubuntu24.04无操作卡死,无法唤醒问题以及内核版本切换记录
  • 全场景覆盖・全流程智控:分布式解决方案让多功能厅 “不止于多”
  • 【轨物方案】聚焦锯床设备智能化升级,打造工业互联网新范式
  • 【轨物交流】轨物科技亮相2025高校科技成果交易会
  • cesium加载geotiff的 四种方法
  • 【毕业设计】基于python的运维管理平台的设计与实现
  • 苹果 iOS 开发真正复杂的不是写代码这方面,是证书、构建、上架
  • FSMC-TFTLCD显示实验(5):显示一个字符串的函数传递过程追踪~
  • 基于Android的课程考勤及作业提交系统
  • 飞易通蓝牙与Wi-Fi模块:医疗产品无线连接的全能助手
  • 你的音效素材库该升级了!这个网站的分类细到超出你想象
  • Agent的“话痨”病有救了!微软黑科技教你压缩对话历史,让AI告别失忆,这篇教程太顶了!