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

1.作业内容

ADT Rational{
    数据对象:D={e1,e2,e3,e4|e1,e2,e3,e4属于ElemType类型
    数据关系:R1={<e1,e2>,<e2,e3>,<e3,e4>}
    基本操作:
    InitRational(&R,v1,v2,v3,v4)
    DestroyRational(&R)
    ResearchRational(R,&e,i)
    ModifyRational(&R)
    AddRational(R)
    SubtractionRational(R)
    MultiplicationRational(R)
    DivisionRational(R)
}ADT Rational

2.数据结构、函数说明

3.代码实现说明


做法:用new申请空间,将分子分母存入

做法:用delete释放申请的空间

做法:经过用户选择,选择返回某一个有理数的分子或分母

做法:经过用户选择,修改某一个有理数的分子或分母

做法:先通分再相加,最后化简存入数组

做法:先统分再相减,最后化简存入数组

做法:分子分母分别相乘,最后化简存入数组

做法:除法就是乘与除数的倒数,最后化简存入数组

4.代码互评

徐宏伟同学的代码:

他的代码只用两个形参e1,e2,而我使用了一个数组的指针。他的代码通过两次调用这个函数,达到将有理数存入数组中,我只调用一次,通过把指针传入,把数组的有理数存入。我认为他的代码风格更为简洁,看上去也更加清爽。我比较喜欢他的代码。

5.结果展示

分母为0重新输入:

分母为负数重新输入:

菜单只能输入1到7的数字,输入其他不崩溃

选择不能选择1,2之外的

相加相减:

相乘相除:

自动化简结果:

6.总结

  • 数据结构是计算机存储/组织数据的方式,通常情况下,精心选择的数据结构可以提高运行效率以及存储效率,所以数据结构对于编程者来说非常重要。抽象数据结构是指抽取出事物具有普遍性的规律,他隐藏了复杂的细节,只保留了实现目标所需的信息,所以抽象数据类型的定义仅取决于它的一组逻辑特性,而与其在计算机内部如何表示和实现无关。
posted @ 2018-03-08 18:48  你们走啊  阅读(217)  评论(2编辑  收藏  举报