一、作业内容
二、数据结构、函数说明
1.头文件 common.h
2.数据结构 Rational.h
三、代码实现说明
1.构造有理数T
2.销毁有理数T
3.e返回有理数的分子或分母
4.用e改变有理数的分子或分母
5.有理数T1,T2相加
6有理数T1,T2相减
7.有理数T1,T2相乘
8.有理数T1,T2相除
9.约分函数
四、互评
我和聪灵在存放有理数时使用了不同类型的结构,我用的是指针,她用了结构体。
相较而言,她用结构体不仅在后续的操作中会方便,而且内存空间是由编译器按计划分配,当变量在作用域内使用完毕时,系统也会自动释放空间,不用人为操作。
我用的指针,需要注意对空间的释放,不然会造成野指针,但也有好处,我可以按需分配其所需要的内存大小以及存储位置。但由于本题是确定的分子和分母,内存的大小固定,而且也不用对存储位置进行改变,所以我认为聪灵使用的结构体更为高效。
五、结果展示
1.输入有理数不合法
2.返回与修改