c++课程设计总结报告 通讯录管理系统

C++(或C)语言课程设计总结报告 学 号: 专 业: 计算机科学与技术 所属学期 一、项目介绍与设计目的 1.项目介绍: 名称:通讯录管理系统 总体要求:有一存在的通讯录文件,数据内容为各联系人的信息。每个联系人信息的组成:姓名、电话号码、QQ、邮编和地址等个人基本信息。 用户界面:(1)输入:程序正常运行后,屏幕上显示一个文字菜单(根据序号选定相应的操作项目),当用户选定操作项目所对应的序号时,根据应用程序的提示信息,从键盘上输入相应的数据。 (2)输出:1)应用程序正常运行后,在屏幕上显示一个文字菜单 2)用户输入数据时,给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。 功能:(1)添加联系人:输入新的联系人信息,并保存其内容。 (2)删除联系人:从文件中删除相应联系人的信息。 (3)显示联系人:从文件中输出所有联系人的信息。 (4)修改联系人:可以修改该联系人的任何一个信息,并保存修改后联系人的信息。 (5)查询联系人:输入联系人的姓名或电话号码,输出相应联系人的全部信息。 (6)关闭通讯录:操作结束后,退出操作。 2.设计目的: (1)通过这次课程设计,巩固c++的知识,尤其对类和文件保存等重要内容进行深入的理解,做到温故而知新。 (2)运用新学的数据结构中链表的知识,加深对新内容的了解,努力做到学以致用。 (3)通过这次编程,增强动手能力,养成良好的编程习惯,做到理论和实践相结合。 二、项目设计思路 首先,定义一个类book,类中包括成员函数,以及私有数据。成员函数有:默认的构造函数,用户界面函数,添加、删除、显示、修改、查询,以及关闭通讯录等函数。私有数据有:通讯录中联系人的姓名、电话号码、QQ、邮编,以及地址等基本信息。 其次,定义一个结构体record,结构体中的变量,一个指向前驱,一个指向后继。 然后,定义一个主函数main(),调用其他相应功能的函数,来完成通讯录的各个操作。 最后,分别定义添加、删除、显示、修改和查询等函数,完成相应的功能模块。 三、项目环境要求 在VC的环境下即可运行。 姓 名: 班 级: 四、项目功能模块 本程序主要有以下七个函数: (1)char book::inter_face()//用户界面函数 程序正常运行后,在屏幕上显示菜单,用户根据需要,按相应的功能键,进行操作。 (2)void book::add_person()//添加联系人的函数 用户按数字键“1”,添加新的联系人,把新添加的内容保存到相应的文件中。 (3)void book::del_person()//删除联系人的函数 用户按数字键“2”,输入你要删除的联系人的姓名或电话号码,如果该联系人存在,则输出该联系人的信息,并删除此人。如果通讯录中没有此人,就输出 “对不起,联系人中没你要找的人”。 (4)void book::show_all()//输出所有联系人的函数 用户按数字键“3”,输出文件“pbook.txt”中全部联系人的信息,否则的话,输出“通讯录中没有联系人”。 (5)void book::alter()//修改联系人的函数 用户按数字键“4”,打开文件,输入你要修改的联系人的姓名或电话号码,找到该联系人后,从新输入要修改联系人新的信息,并保存到“pbook.txt”文件中;否则的话,输出“通讯录中无此人”。 (6)void book::select()//查找联系人的函数 用户按数字键“5”,打开文件,输入要查找的联系人的姓名或者电话号码,找到此人,输出该联系人的全部信息,否则的话输出“对不起,通讯录中没有此人”。 (7)void book::save_new()//关闭通讯录的函数 用户操作完成后,按数字键“6”,关闭通讯录的内容。 (8)int main()//主函数 运用switch()语句,选择相应的功能键,调用相应的函数,进行该功能的操作。 五、程序关键源代码(注:关键或者比较有特色的代码段,无需完整的源代码) 1、struct record { book object; record *prior; record *next; }; 2、void book::save_new(){ ofstream outData(\ if (!outData) { cout <<\对不起!!!打开文件失败!!!!\ system(\ return; } outData << setiosflags(ios::left) << setw(17) << name<<\number <<\ << setw(15) << qq <<\\setw(10) << post <<\\setw(20) << address <

源代码:

#include #include #include #include #include #include using namespace std; class book {

public: book();

char inter_face(); void add_person(); void del_person(); void show_all(); void alter(); void select(); void save_new(); private:

string name; string address; string number; string post; string qq; };

struct record {

book object; record *prior; record *next; };

book::book() {

name = \ address = \ number = \ post = \ qq = \}

char book::inter_face() {

system(\

cout<<\★★★★★★★★★★★★★★★★★★★★★★★★★★\ <<\※ ※\ <<\※ 小 小 通 迅 录 ※\ <<\※ ※\ <<\※ 1. 添加新联系人. 4. 修改信息. ※\ <<\※ ※\ <<\※ 2. 删除联系人. 5. 查询联系人. ※\ <<\※ ※\ <<\※ 3. 显示所有联系人. 6. 关闭通迅录. ※\ <<\※ ※\ <<\★★★★★★★★★★★★★★★★★★★★★★★★★★\<

<<\选择 :\ int choose; cin>>choose; fflush(stdin); return choose; }

void book::add_person() {

cout <<\根据下面提示输入新联系人信息\姓名 :\

cin >>name; fflush(stdin); cout <<\电话 : \ cin >>number; fflush(stdin); cout <<\ cin >>qq;

fflush(stdin); cout <<\邮编 : \ cin >>post; fflush(stdin); cout <<\地址 : \ cin >>address; fflush(stdin); save_new();

cout <<\新联系人信息已经保存好!!!!!\ system(\}

void book::del_person()

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4