姜志达实验十报告

姜志达实验十报告

ID:41628567

大小:62.06 KB

页数:10页

时间:2019-08-29

姜志达实验十报告_第1页
姜志达实验十报告_第2页
姜志达实验十报告_第3页
姜志达实验十报告_第4页
姜志达实验十报告_第5页
资源描述:

《姜志达实验十报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验十实验报告姜志达1.实验目的(1)掌握运算符重载的定义及实现。(2)掌握具冇运算符匝载的应用。2.实验设备硬件环境:微型计算机软件环境:操作系统:Windows语言环境:VisualC++3.预习要求学习教材有关运算符重载的内容,对基本运算符重载及特殊运算符重载有充分的理解。对实验基木要求应在上机实验询仔细阅读,程序应事先编制完成,上机吋录入调试,同吋还应设计相应的测试用例集,检查程序的正确性、可靠性、完备性和容错能力。4・实验内容(1)将一个16位二进制数表示成0和1的字符序列,即用一个字符数组来存放这个二

2、进制数。在这个类中设置两个构造函数,一个是传递整数参数的,另一个是传递字符串参数的。因为用户在创建对象时传递的二进制数,可能是以整数形式给出,也可能是以数字申形式给出,系统应该都能接受。另外有一个类型转换函数int(),用来将类类型向整型转换。程序中的两个璽载运算符“+”,“・”,用來完成两个二进制数Z间的加减运算。#includeiostream.hz,#include"string,h"#include"conio.h"classbinary{//定义二进制类charbits[16];〃二进制字模数纽publ

3、ie:binary(char*);//字符串参数构造函数binary(int);//整型参数构造函数friendbinaryoperator+(binary,binary);//重载"+”friendbinaryoperator-(binary,binary);//重载"一”operatorint();//类类型转换函数voidprint();binary::binary(char*num){intisrc=strlen(num)-l;//字符串长度T为最低位intidest=15;while(isrc>=0&&

4、idest>=0)bits[idest--]=(num[isrc--]='O'?'O':T');//逐位赋值while(idest>=0)bits[idest--]='O';//空高位值0}binary::binary(intnum){for(inti=15;i>=0;i—){bits[i]=((1));//求余数num»=l;//移位,相当于整除2}}binaryoperator+(binarynl,binaryn2){unsignedcarry二0;unsignedvalue;binaryres="0";fo

5、r(inti=15;i>=0;i—){value=(nl.bits[i]二二'O'?0:1)+((2))+carry;res.bits[i]=(valuc%2=0?'O':'l');carry=value»l;}returnres;}binaryoperator-(binarynl,binaryn2){unsignedborrow^O;intvalue;binary:res="0";for(inti=15;i>=0;i--){value=(nl.bits[i]==,O'?0:l)-(n2.bits[i]==,0,

6、?0:1)+borrow;res.bits[i]=(value==-l

7、

8、value==l?>1'O');borrow=(value==-l

9、

10、borrow!=0&&(value=0

11、

12、value=l)?l:0);returnres;binary::operatorint(){unsignodvalue二0;for(inti二0;i<=15;i++)va1ue=((3))+(bits[i]=,O'?0:1);returnvalue;}voidbinary::print(){charstr[17];strncpy(

13、str,bits,16);str[16]='';cout<

14、列程序,根据题意要求在处填上合适的内容完成程序。•上机录入、调试上而程序。•运行程序,纪录并分析运行结果是否正确。[分析与思考]•将+、・运算符定义为binary类的成员函数。•重载运算符~、&、

15、分别将二进制数按位取反、数按位与及按位或。(1)编写一个集合类,重载+(并集)、・(差集)、*(交集)、《(输出)、»(输入)等函数。5.实验过程解:(1)num%2==0?'

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。