資源簡介
使用C++編寫的電話簿管理程序,程序功能:(1)將電話簿數據和相應的函數封裝在類中,采用雙鏈表結構,改寫程序使之結構化。
(2)增加了記錄修改功能,能選擇修改用戶的姓名、電話、QQ號碼。
(3)增加了錄入時間的顯示及存儲。
(4)增加了缺省的查詢方式,即查詢時只輸入姓名的首字母,所有符合這一條件的電話資料均在屏幕上顯示。
(5)漢化菜單和幫助。
(6)增加顯示功能(鏈表提供逐屏顯示選擇而且由用戶確定每屏顯示的數目)。
(7)增加按性別輸出記錄的功能,由用戶選擇性別進行顯示 。
(8)將按lastname搜索改為按fullname搜索。
(9)解決了同名同姓問題。

代碼片段和文件信息
/********************************************************************************************************************************************************
張鵬??學號:0706580140
最終更改于:2008/10/31/1:30
*******************************************************************************************************************************/
/*--------------------------------第5題 電話簿管理-----------------------------*/
#include
#include??
#include
#include
#include
#include
#include
class??friend_node???????????????????????//定義類friend_node
{
private:?????????????????????????????????//私有成員
????char?last_name[20];
????char?first_name[15];
????char?phone_num[15];
char?QQ_num[15];?????????????????????//增加的QQ號碼記錄功能
char?Time[30];???????????????????????//增加的記錄系統時間的功能
char?sex; ?????????????????????????//增加的記錄性別的功能
public:??????????????????????????????????//公有成員
????void?handle_choice(char?choice);?????//函數原型說明
void?add_record();
void?insert_node(friend_node?*new_rec_ptr);
friend_node?*position_insertion_point(char?lastname[20]);
void?make_node_new_head(friend_node?*new_rec_ptr);
void?add_node_to_end(friend_node?*new_rec_ptr);
void?move_current_to_end();
void?display_list();
void?display_somelist();?????????????//增加的部分顯示的函數
void?display();??????????????????????//增加的輸入的函數
void?delete_record();
void?delete_allrecord();?????????????//增加的刪除所有記錄的函數
void?delete_head_of_list();
void?delete_end_of_list(friend_node?*previous_ptr);
void?delete_from_middle_of_list(friend_node?*previous_ptr);
int??verify_delete();?
void?delete_node(friend_node?*previous_ptr);
void?delete_list();
void?search_by_fullname();???????????//修改的根據姓名查找的函數
void?write_list_to_file();
void?load_list_from_file();
void?help_me();
void?replace();??????????????????????//更改記錄的函數
????void?display_by_sex();???????????????//增加的按性別輸出記錄的函數
????void?Default_search();???????????????//按首字母查詢記錄的函數
void?gettime(friend_node*point);?????//獲得系統當前時間的函數
friend_node?*prev*next;?????????????//表示雙鏈表結構的*prev*next指針
}a;
?????????????????????????????????????????//friend_node類的變量a
char?pause;
char?fullname[36]; ?????//全局變量,將姓和名聯合到一個數組中
friend_node?*head_ptr;???????????????//全局變量,鏈頭指針
friend_node?*current_ptr;????????????//全局變量,用于指明當前鏈表中的位置
/**********************************************************************************************************/
int?main()???????????????????????????????//主函數
{
cout?<“----------------------------------------------------------------------------“;
cout?<“??????????????????????歡迎使用電話簿管理2.0版\n“;
cout?<“----------------------------------------------------------------------------\n“;
cout?<“此版本進行了如下改進:?\n\n“;
????cout?<“????????????????對菜單和幫助進行了漢化?\n“;
cout?<“????????????????增加按首字母智能查找功能\n“;
cout?<“????????????????增加修改記錄功能\n“;
????cout?<“????????????????增加分頁顯示記錄功能\n“;
????cout?<“????????????????增加記錄數據更改時系統時間的功
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????69632??2008-11-02?21:57??電話簿管理\Debug\vc60.pdb
?????文件?????237658??2008-11-02?21:57??電話簿管理\Debug\電話簿管理.exe
?????文件??????84728??2008-11-02?21:57??電話簿管理\Debug\電話簿管理.obj
?????文件?????672768??2008-11-02?21:57??電話簿管理\Debug\電話簿管理.pdb
?????文件????????332??2008-11-02?21:56??電話簿管理\FRIENDS.txt
?????文件??????41146??2008-11-02?21:58??電話簿管理\電話簿管理.cpp
?????文件???????3451??2008-11-02?21:51??電話簿管理\電話簿管理.dsp
?????文件????????545??2008-11-02?21:58??電話簿管理\電話簿管理.dsw
?????文件??????41984??2008-11-02?21:58??電話簿管理\電話簿管理.ncb
?????文件??????48640??2008-11-02?21:58??電話簿管理\電話簿管理.opt
?????文件???????1202??2008-11-02?21:57??電話簿管理\電話簿管理.plg
?????文件?????120320??2008-11-02?21:48??電話簿管理\課程設計報告.doc
?????目錄??????????0??2010-12-28?02:35??電話簿管理\Debug
?????目錄??????????0??2010-12-29?03:57??電話簿管理
-----------?---------??----------?-----??----
??????????????1322406????????????????????14
評論
共有 條評論