國立屏東大學 資訊工程系 物件導向程式設計

Turnin 作業2


第1題

turnin code cpp.hw2

  1. 設計一個C++程式名為member.cpp
  2. 設計一個結構體以儲存並管理會員資料,每個會員必須包含以下資訊:
    1. 姓名,使用上一題所設計的Name結構體
    2. 行動電話號碼,字串
    3. 會員等級,宣告一個enum,其值可以為「Gold」與「Silver」
    4. 會員優惠(benefit),請以union設計
      • Gold會員有每個月月費的折扣(discount,浮點數)
      • Silver會員有每個月免費的分鐘數(freeMinute,整數)
  3. 程式執行時,使用「<」將測試檔「members.dat」導入五筆會員資料
  4. 所取得的資料,必須以動態的結構體陣列方式儲存(可假設會員數不超過5人)
  5. 讓使用者輸入會員的姓氏,在陣列中尋找符合的會員,並將其資料輸出
  6. 反覆執行前一步驟,直到使用者輸入「Quit」為止。
  7. 注意!本題所有輸入皆不須在執行時手動輸入,全部輸入皆位於「members.dat」檔案中。
  8. 請你turnin「member.cpp」以及「name.cpp」,我們會使用以下的方式,編譯你的程式:

g++ -c name.cpp
g++ member.cpp name.o

[02:16 junwu@ws hw3]$ ./a.out < members.dat
Input: Wu
Jun (0912345678) G/0.8
 
Input: Lin
Member not found!
 
Input: Liu
Ming-Chung (0988123456) S/100
 
Input: Kuo
Cho-Ming (0999999999) S/80
Ping (0955333222) G/0.9
 
Input: Quit
Bye
[02:16 junwu@ws hw3]$ 

注意:相同姓氏的人如果有一位以上時,依名字的lexicographical order印出。 本題所需之檔案,可至ws.csie.nptu.edu.tw上取得,其所在目錄為/home/stu/public/cpp2020/hw2-1 。