week01-緒論


有理數基本運算:

1、抽象數據模型

ADT Rational{

	數據對象:
		D={ e1, e2 | e1,e2屬於 int 類型} 

	數據關系:
		R={ <e1,e2> }  //e1為有理數的分子,e2為有理數的分母

	基本運算:
		InitRetion( *T, e1, e2):構造有理數T,元素e1,e2分別被賦以分子、分母值

		DestroyRetion( *T ):銷毀有理數T

		put( i, *T, e):用e(引用類型參數)返回有理數T的分子或分母,當入參i為1時返回分子, i為2是返回分母

		modify( i, *T, e):將有理數T的分子或分母更改為e,入參i為1時改變分子, i為2是改變分母

		add( *T1, *T2, *T3 ):有理數T1,T2相加,結果存入有理數T3

		minus( *T1, *T2, *T3 ):有理數T1,T2相減,結果存入有理數T3

		mult( *T1, *&T2, *T3 ):有理數T1,T2相乘,結果存入有理數T3

		division( *T1, *T2, *T3 ):有理數T1,T2相除,結果存入有理數T3

 }ADT Rational

2、頭文件

3、代碼實現說明

  • 1、構造有理數

  • 2、分子(分母)的返回

  • 3、分子(分母)的修改

  • 4、求有理數之和

  • 5、求有理數之差

  • 6、求有理數之積

  • 7、求有理數之商

  • 8、約分(求最大公約數)

4、運行結果展示

  • 樣例

  • 分母為零

  • 負有理數

  • sample

5、代碼互評


++++++++++++++++++++++++++++++++++++++++++++++++

- 夢冰在有理數定義的時候是用 new 動態分配空間優點是按需分配不浪費存儲空間;不足之處在於若指針沒有及時釋放,則會成為指向任意空間的野指針。

- 我在有理數定義是使用結構體優點是結構體按計划分配,由編譯器給定空間,在作用域使用完畢系統自動釋放所占空間;不足之處在於結構體是靜態分配,只有固定的內存和位置,不能根據需求任意改變大小。

6、git和碼雲的使用

- 利用 git 發送文件到碼雲


- 利用 git 從碼雲下載文件

  • 1)設置 ssh 公鑰
  • 2)下載文件

心得體會

  • 明白了在 c 中沒有引用類型,不能用形如 fun (&a) { //代碼 } 的實行定義函數。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM