linux操作系統下的《手機通訊錄管理系統》實現文檔------相當經典

 

 

 

 

通訊錄管理系統

 

作者:郭小強    日期2010-07-27

 修改記錄

 

編號

修改日期

修改人

備註說明

1

2010-07-27

郭小強

創建

2

2010-07-28

郭小強

修改(去掉密碼)

3

2010-07-28

郭小強

註釋數據結構

4

2010-07-29

郭小強

實現具體的操作功能

5

2010-07-30

郭小強

定義界面操作

6

2010-07-31

郭小強

創建目錄

7

2010-08-01

郭小強

修改目錄

 

目錄

一.概述.................................................................................................................................................................... 4

二.使用範圍........................................................................................................................................................... 4

三.功能描述........................................................................................................................................................... 4

四.定義模塊........................................................................................................................................................... 5

五.框架結構........................................................................................................................................................... 5

1.add命令....................................................................................................................................................... 6

2.find命令...................................................................................................................................................... 6

3.modify命令................................................................................................................................................ 7

4.delete命令.................................................................................................................................................. 7

5.list命令........................................................................................................................................................ 7

6.export命令................................................................................................................................................. 8

7.help命令...................................................................................................................................................... 8

8.exit命令........................................................................................................................................................ 9

六.功能實現........................................................................................................................................................... 9

1.定義數據結構............................................................................................................................................. 9

2.具體功能的實現......................................................................................................................................... 9

七.界面操作......................................................................................................................................................... 12

1.add界面操作........................................................................................................................................... 12

2.find界面操作........................................................................................................................................... 12

3.delete界面操作....................................................................................................................................... 13

4.list界面操作............................................................................................................................................ 14

5.export命界面操作................................................................................................................................. 14

6.modify界面操作..................................................................................................................................... 14

7.help界面操作.......................................................................................................................................... 15

8.exit界面操作............................................................................................................................................ 15一.      概述

互聯網的出現與迅速發展、信息技術步伐的加快,使得個人的技術面臨着衆多的挑戰和競爭,在競爭過程中對信息的掌握程度、信息獲取是否及時、信息能否得到充分的利用、對信息的反應是否敏感準確也逐漸成爲衡量一個人競爭能力的重要因素,手機的使用現在已經趨於全球化,爲了滿足市場的需要、適應現代競爭產業,就基於手機功能的多功能化、快捷化,本系統就上是從這裏出發的。

傳統的用人腦記憶通訊信息不但麻煩,而且還十分耗費人的體力和時間。而手機通訊系統對手機用戶的姓名、手機號碼、住宅號碼、電話、傳真、電子郵箱等進行了綜合統計和管理,是你能夠更快的得到自己想要的信息。

二.      使用範圍

本系統是一個手機通訊錄的自動化系統,它簡單操作,只要用戶有一個屬於自己的帳號和手機密碼(由於時間的關係,本系統暫時沒有追加手機密碼,但爲了是功能更完整話,在版本升級的時候就實現此功能),就可以方便是用本系統了。

三.      功能描述

1.     面向使用者提供交互式的個人通訊記錄的添加、修改、查找、刪除、數據導出等基本功能。

1.1使用者可以在通訊錄中添加姓名 、手機號碼;

1.2使用者可以在通訊錄中修改已經存在的姓名 、手機號碼;

1.3使用者可以在通訊錄中輸入姓名 查找出與該姓名相對應的相關信息以備用戶所需;

1.4使用者可以在通訊錄中刪除已經存在的姓名 、手機號碼;

1.5使用者可以讓通訊錄中的姓名和號碼以列表的形式顯示;

1.6使用者可以在通訊錄中導出手機中所存的所有姓名 、手機號碼,即備份防止丟失.

2.用戶通過終端命令,完成通訊錄的使用。

2.1使用者可以在通訊錄中可以使用help命令,尋求幫助;

2.2使用者可以在通訊錄中可以使用exit命令,返回上一菜單。

.定義模塊

   爲了實現多功能化的操作,可以通過定義許多模塊各自去實現各自的功能,然後將每個模塊包含在主函數中就可以了,現定義模塊的命令和功能如下

add   命令  (添加功能)

find   命令  (查找功能

list    命令  (列表功能)

delete  命令  (刪除功能)

modify命令  (修改功能)

export 命令  (導出功能)

help   命令  (幫助功能)

exit   命令  (退出功能)

.框架結構

1.      add命令

1)用戶輸入add命令用戶輸入add命令,按enter ;

2)系統提示用戶輸入用戶名,用戶輸入後按enter ;

3)系統提示用戶輸入電話號碼,用戶輸入後按Enter;

4)系統會根據輸入信息,只做添加操作:

         判斷用戶名是否合法

         判斷電話號碼是否合法

         提醒用戶是否保存

2.      find命令

1)用戶輸入find命令,按enter;

2)系統提示請輸入要查找的內容,輸入後按enter ;

3)系統會根據輸入信息,只做查找操作:

         提醒用戶是否存在

         判斷用戶名是否合法

3.      modify命令

1)用戶輸入modify命令,按enter ;

2)系統提示輸入要修改的信息,輸入後按enter ;

3)系統會根據輸入信息,只做修改操作:

         提醒用戶是否存在

         判斷用戶名是否合法

         判斷電話號碼是否合法

         提醒用戶是否保存

4.      delete命令

1) 用戶輸入delete命令,按enter ;

2)系統提示輸入要刪除的信息,輸入後按enter ;

3)系統會根據輸入信息,只做修改操作:

         提醒用戶是否存在

         提醒用戶確認刪除

5.      list命令

用戶輸入list命令,按enter .

6.      export命令

1) 用戶輸入export命令,按enter ;

2)系統提示輸入要導出到的地址,輸入後按enter ;

3)系統會根據輸入信息,只做導出操作:

         判斷是否存在列表

         判斷地址是否有效

         提醒用戶是否確認導出

7.      help命令

1)用戶輸入help命令,按enter

2)以列表形式輸出以上各種命令,以及它們的操作方法

         添加:用戶輸入add命令,按enter鍵,輸入要查找的信息,若收到錯誤提示,則說明你輸入內容有誤,繼續輸入,添加成功後會有成功提示;

         修改:用戶輸入modify命令,按enter鍵,輸入要修改的信息,若收到錯誤提示,說明你輸入內容有誤,繼續輸入,若輸入正確,會提示是否確定修改,修改成功後會有提示 ;

         刪除:用戶輸入delete命令,按enter鍵,輸入要刪除的信息,若收到錯誤提示,說明你輸入內容有誤,繼續輸入,若輸入正確,會提示是否確定刪除,刪除成功後會有提示 ;

         列表:用戶輸入list命令,按enter;

         導出:用戶輸入export命令,按enter鍵,輸入要導出到何處,若收到錯誤提示,說明此地無效,繼續輸入,若輸入正確,會提示是否確定導出,導出成功後會有提示 ;

         退出:用戶輸入exit命令,按enter鍵,按照提示確定是否刪除,若是則會退出.

8.      exit命令

1)     用戶輸入exit命令,按enter ;

2)     系統會根據輸入信息,只做退出操作:

a)       提醒是否確認退出

b)      提醒是否保存已經操作過的信息

.功能實現

 

1.      定義數據結構

  teypedef  struct student

{

char name[20];

char phone[20];

int flag;

struct student * next;

} contact;

 

2.      具體功能的實現

1. 創建動態鏈表,在主函數中調用創建動態鏈表函數contact* init_contact(){},返回頭指針contact * head;

2 .創建動態鏈表,在主函數中調用創建動態鏈表函數contact* init_contact(){},返回頭指針。contact * head

3.定義一個菜單函數void displayMenu(Contact * head){},來調用各種操作的函數。用whiletrue)死循環一直循環輸出(contact>>)和接受用戶輸入的內容,直到用戶執行退出操作爲止,用戶輸入的內容用定義的變量char command[20]接收。用if來判斷用戶輸入的要執行的是那一種操作,繼而調用相應的操作函數來實現。

4.定義contact* add(contact* head){}函數,來實現添加用戶的操作。用malloc函數在內存中開闢一塊(contact*)malloc(sizeof(contact))的內存空間,賦給變量 contact* node,接收增加進來的用戶。

5.定義函數 int isValidUserName(char* name){},用if判斷輸入的用戶名是否合法,當用戶名爲字母,且長度小於20時爲合法,合法return 1,不合法return 0

6.定義函數 int isValidTelephone(char* phone){}, if來判斷輸入的電話號碼是否合法,當電話號碼長度爲11時爲合法,合法return 1,不合法return 0;

7.定義函數contact* getLastcontact(contact* head){},來得到鏈表的最後一個指針,當表爲空時,頭指針Contact* head指向NULL,並返回;當鏈表不爲空時,用while()輸出最後一個指針。

8.定義函數contact* find(contact* head){},實現查找功能,定義兩個指針分別指向鏈表的頭指針,再定義一個指針字符串,提示用戶輸入需要查找的姓名,然後判斷如果指針指向的地址的姓名和用戶輸入的字符串相等的話,輸出與姓名相匹配的信息,否則志指向head的指針移動到鏈表的下一個結點出繼續判斷,直到出現p->next=NULL時結束,提示未找到;

9.定義函數contact* delete(contact* head){},實現刪除功能.定義兩個指針指向head,調用函數contact* find(contact* head){},如果找到了需要刪除的用戶,就讓上一個指針指向下一個結點;

10. 定義函數contact* modify(contact* head){},實現修改功能, 定義一個指針p指向head,再定義一個字符串new_name指針和整型new_phone指針存放用戶輸入的信息,調用函數contact* find(contact* head){},如果找到了需要修改的用戶,p->name=new_name 或者p->name=new_phone;

11.定義函數 contact* list(contact* head){}實現列表功能,定義兩個指針指向head,p1->name,p2->phone,依次輸出就可以了,還必須使得p=p->next循環起來,直到p->next=NULL爲止;

12. 定義函數void*export(contact* head){}實現導出功能,此時需要文件操作   FILE* fp=fopen(exportPath,"w");即將計算機內存中存儲的信息導出到計算機硬盤文件中;

13.定義函數void* help(contact* head){}實現幫助功能, void displayMenu(Contact * head){}函數接到command命令help後輸出一些幫助信息即可;

14.void displayMenu(Contact * head){}接到command 的命令爲 exit後提示是否保存退出,再將信息寫到文件中即可.

.界面操作

1.    add界面操作

1.用戶進入系統時會看見contact>>,在光標停閃處輸入add,按回車enter鍵進入add>>目錄下;

2.當用戶看到please input the name, 就輸入一個姓名(有字母組成且長度小於20),按回車鍵enter,如果用戶輸入的用戶名不合法,系統會提示錯誤,the name is illegal,please input other name:直到輸入的用戶名合法;

3.當用戶輸入的用戶名正確之後,系統會提示用戶please input the phone No,在用戶輸入電話號碼(只能由數字組成不多於20位)之後,按回車鍵enter,如果用戶輸入的電話號碼不合法,系統會提示錯誤,the phoneNo is illegal,please input other :直到輸入的電話號碼合法;

4.此時系統提示are you want to save(y/n):如果輸入y或者Y則不保存退出到菜單界面,如果輸入n或者N則保存退出到菜單界面。

2.find界面操作

1.用戶進入系統時會看見contact>>,在光標停閃處輸入find,按回車enter鍵進入find>>目錄下;

2.當用戶看到please input the name which you want to find, 就輸入一個姓名(有字母組成且長度小於20),按回車鍵enter,如果用戶輸入的用戶名不合法,系統會提示錯誤,the name is illegal,please input other name:直到輸入的用戶名合法;

3.如果通訊錄中有此姓名的用戶,則輸出與此用戶相關的信息,否則系統提示sorry,no such an user!

3.delete界面操作

1.用戶進入系統時會看見contact>>,在光標停閃處輸入delete,按回車enter鍵進入detete>>目錄下;

2.當用戶看到please input the name which you want to find, 就輸入一個姓名(有字母組成且長度小於20),按回車鍵enter,如果用戶輸入的用戶名不合法,系統會提示錯誤,the name is illegal,please input other name:直到輸入的用戶名合法;

3.如果通訊錄中有此姓名的用戶,則系統提示are you assure to delete? 若是則刪除退出返回到主菜單,否則則不刪除退出返回到主菜單;

4.如果沒有查找到,則系統提示sorry,no such an user!

3.      list界面操作

1.用戶進入系統時會看見contact>>,在光標停閃處輸入list,按回車enter鍵進入list>>目錄下;

2.系統就會顯示當前通訊錄中的信息,若通訊錄爲空的話,則會給出提示信息there is no record!

5.export界面操作

1.用戶進入系統時會看見contact>>,在光標停閃處輸入export,按回車enter鍵進入export>>目錄下;

2.系統會提示are you assure to export?如果是則導出返回到主菜單,否則不導出返回到主菜單。

6.modify界面操作

1.用戶進入系統時會看見contact>>,在光標停閃處輸入modify,按回車enter鍵進入modify>>目錄下;

2.當用戶看到please input the name which you want to find, 就輸入一個姓名(有字母組成且長度小於20),按回車鍵enter,如果用戶輸入的用戶名不合法,系統會提示錯誤,the name is illegal,please input other name:直到輸入的用戶名合法。

3.如果通訊錄中有此姓名的用戶,則系統提示please input a name: 就輸入一個姓名(有字母組成且長度小於20),按回車鍵enter,如果用戶輸入的用戶名不合法,系統會提示錯誤,the name is illegal,please input other name:直到輸入的用戶名合法。

4.如果修改電話號碼的話,系統會提示are you want to modify the phoneNo 用戶輸入確認的信息後,系統會提示用戶please input the phone No,在用戶輸入電話號碼(只能由數字組成不多於20位)之後,按回車鍵enter,如果用戶輸入的電話號碼不合法,系統會提示錯誤,the phoneNo is illegal,please input other :直到輸入的電話號碼合法。

5.最後系統提示are you assure to modify?若是則保存退出,否則則不保存退出返回到主菜單。

 

7.help界面操作

1.用戶進入系統時會看見contact>>,在光標停閃處輸入help,按回車enter鍵進入help>>目錄下;

2.系統會自動顯示如何對通訊錄管理的操作方法。

 

8.exit界面操作

1.用戶進入系統時會看見contact>>,在光標停閃處輸入exit,按回車enter鍵進入exit>>目錄下;

2.接下來系統會提示are you want to save(y/n)?

3.如果是則保存當前的操作記錄,退出返回到主菜單;

4否則不保存當前的操作記錄,退出返回到主菜單。

 

 

 

 

發佈了34 篇原創文章 · 獲贊 5 · 訪問量 12萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章