博客作业01-抽象数据类型

1.作业内容(1分)

用ADT的抽象数据模型描述你的有理数数据类型

1233791-20180308183626459-2098009232.png

2.数据结构、函数说明(2分)

截图展示你的头文件。头文件代码务必加入注释。
1233791-20180310203854894-1053107180.png

3.代码实现说明(4分)

截图展示每个函数代码。简要说明做法。
建议用C++语法:cin,cout,引用参数&,new,delete

新建有理数:

1233791-20180310203942326-784733218.png

销毁有理数:

1233791-20180308174432602-193732150.png

返回分子分母的数值:

1233791-20180308174659214-1625894897.png

改变分子分母的数值:

1233791-20180308174718259-1938585596.png

有理数加法:

1233791-20180310205920472-1326417200.png

有理数减法:

1233791-20180310205944189-885524.png

有理数乘法:

1233791-20180310210004085-259770555.png

有理数除法:

1233791-20180310210035956-49362354.png

有理数的化简:

1233791-20180308174856588-1526306088.png

4.代码互评(选做,加分)

找一份同学代码,评价你和同学代码不同之处,如:

变量名命名风格不同
函数设计风格不同
结构体有无不同
异常出错处理是否不同
等等
注意:务必找个代码风格差异大的同学代码互评,此处要说写的太简单,0分。尽量找代码写的比自己好的同学互评。

5.结果展示(2分)

每种测试数据一个截图结果。测试数据越多,此项得分越高。务必考虑临界数据,如分母为负数或0情况等等。
1233791-20180308180840416-131759553.png

1233791-20180308180932161-17922081.png

1233791-20180308181002023-610165107.png

1233791-20180308181119433-1453373656.png

1233791-20180310195842710-693614730.png

原先的第一个有理数的分子为4

1233791-20180310201148705-756487702.png

将第一个有理数的分子改为2

1233791-20180310200155167-2023426710.png

在进行返回操作,查询显示修改成功

1233791-20180308181841000-314321365.png

修改后的第一个有理数1/2与原先的1/2进行正确的加法运算

6.总结(1分)

谈谈你对数据结构及抽象数据类型的理解。

我认为数据结构是以一定的数据对象对该对象进行处理,力求找到处理的最优化算法方式

数据对象在计算机中的组织方式:逻辑结构【线性,树,图...】,物理储存结构【顺序,链式...】

抽象数据类型:

  • 可以只关心它的逻辑特征,不需要了解它的存储方式。定义它的人同样不必要关心它如何存储
  • 利用ElementType“元素名字” 在需要某种类型时,这个类型可以用相应具体类型替换掉
ADT 抽象数据类型名{

数据对象:<数据对象的定义>

数据关系:<数据关系的定义>

基本操作:<基本操作的定义>

}ADT 抽象数据类型名

7.选做

学会使用git上传你的代码到码云
参考资料:Git与码云(Git@OSC)入门-如何在实验室和宿舍同步你的代码(1)

转载于:https://www.cnblogs.com/linxiaolu/p/8527823.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值