课程设计题目: 个人信息管理软件
学生姓名: 专 业: 班 级 :
学 号 :
指导教师 :
2014年6 月20日
个人信息管理软件课程设计报告
1.问题分析
根据个人信息管理的需要,设计一个“个人信息管理软件”,以便对各项个人信息的管理操作。要求:
(1) 能对基本的个人信息进行录入和修改; (2)能对个人信息进行删除; (3)能对个人信息的条数进行统计; (4)能查询个人信息; (5)能插入个人信息; (6)保存并加载个人信息;
(7)使用户具有一点的保密性,即设计一个用户登录选项;
所以根据以上需求设计出的软件主要定义 个函数来实现以上功能:
(1)主函数:定义个人信息结构体和类,输出对话操作菜单,调用登录、录入、浏览、查询、删除、插入、修改、保存、加载、退出等函数对个人信息进行处理。
(2)登录函数:输入用正确户名和正确密码进行登录; (3)录入函数:从键盘输入个人信息;
(4)浏览函数:浏览输入的全部个人信息; (5)查询函数:输入要查询的姓名进行查询; (6)删除函数:输入要删除的姓名进行删除; (7)插入函数:输入要插入的个人信息,并输入要插入的位置进行插入;
(8)修改函数:输入要修改的姓名,并输入要修改的信息进行修改;
(9)保存函数:将输入的所有个人信息保存于指定文件夹中;
(10)加载函数;将保存的个人信息加载到指定界面显示出来;
2.代码及实现流程分析
(1)其中的类结构包括:基类Person类,由Person
类派生出Employed类和Unemployed类;
(2)实现流程概述:通过菜单选择项,根据操作提
示输入相应的操作选项,然后软件自动调用该功能的代码并运行实现该功能即可。
(3)
个人信息管理软件 登录 取消 输入信息浏览信息查询信息删除信息插入信息修改信息保存信息加载信息退出
#include string name; string address; string sex; int phone,age,family; }PERSON; class Person{ public: int length; int yh,mm; int getyh(){return yh;} int getmm(){return mm;} int menu_select(); int setmm(); int enter(); int shuru(PERSON t[]); void list(PERSON t[],int n); void search(PERSON t[],int n); int del(PERSON t[],int n); int add(PERSON t[],int n); void save(PERSON t[],int n); int load(PERSON t[]); void print(PERSON temp); int find_name(PERSON t[],int n,string p); void modify(PERSON t[],int n); }; int Person::enter() {string a,b; int N; cout<<\"1.登录\"< system(\"cls\"); if(N==1) { cout<<\"用户名:\"; cin>>a; cout<<\"密码:\"; cin>>b; if(a==\"liu\"&&b==\"123\") { cout<<\"登录成功!\";return N; } else { cout<<\"请检查用户名和密码是否有误,并重输!\"; // break; } getchar(); } if(N==2) { exit(0); } } return N; } //菜单选择、、、、、、、、、、、、、、、、、、、、 int Person::menu_select() { int n; cout<<\"****************主 *******************\"< 单 cout<<\" \"<<\"4.删除个人信息\"< //输入个人信息、、、、、、、、、、、、、、、、 int Person::shuru(PERSON t[]) { int i,n; system(\"cls\"); cout< cout<<\"请输入个人信息:\"< //显示记录,参数为记录数组和记录条数 void Person::list(PERSON t[],int n) { int i; system(\"cls\"); cout<<\"***************************************\"< cout<<\"姓名\"<<\" \"<<\"地址\"<<\" \"<<\"性别\"<<\" \" <<\"电话号码\"<<\" \"<<\"年龄\"<<\" \"<<\"人口数\"< char Name[20]; int i; system(\"cls\"); cout<<\"输入要查找人的姓名:\"< i=find_name(t,n,Name); if(i>n-1) cout<<\"没有姓名为\"< char Name[20]; int ch=0; int i; cout<<\"请输入要删除的人的姓名:\"< i=find_name(t,n,Name); if(i==n) cout<<\"没有找到该人\"< cout<<\"删除成功!\"< PERSON temp; int i,j; string Name; cout<<\"请输入要插入的个人信息:\"< <<\"电话号码\"<<\" \"<<\"年龄\"<<\" \"<<\"人口数\"< cout<<\"--------------------------------------------------\"< cout<<\"请输入插入位置的姓名,将新记录插入该名字前:\"< i=find_name(t,n,Name); } else i=0; for(j=n-1;j>=i;j--) { t[j+1].name=t[j].name; t[j+1].address=t[j].address; t[j+1].sex =t[j].sex ; t[j+1].phone =t[j].phone ; t[j+1].age =t[j].age ; t[j+1].family =t[j].family ; } t[i].name=temp.name; t[i].address=temp.address; t[i].sex =temp.sex; t[i].phone =temp.phone; t[i].age =temp.age; t[i].family =temp.family ; n++; return n; } //保存函数、、、、、、、、、、、、、、、、、、、、、、、、 void Person::save(PERSON t[],int n) { int i; fstream ioFile; ioFile.open(\"D:\\\\grxx.txt\ioFile< cout<<\"文件保存成功!\"< //fstream ioFile; ifstream in(\"D:\\\\grxx.txt\in>>n; if(n>0) { for(int i=0;i >>t[i].family; } cout<<\"文件已加载成功!\"< cout<<\"***********************************************\"< <<\"电话号码\"<<\" \"<<\"年龄\"<<\" \"<<\"人口数\"< \"< for(i=0;i //修改函数、、、、、、、、、、、、、、、、、 void Person::modify(PERSON t[],int n) { char Name[20]; int ch=0; int i; cout<<\"请输入要修改的姓名:\"< i=find_name(t,n,Name); if(i==n) cout<<\"没有找到该人\"< cout<<\"该人修改前:\"< <<\"电话号码\"<<\" \"<<\"年龄\"<<\" \"<<\"人口数\"< getchar(); cout<<\"该人的信息修改后:\"< string work; int gongzi; public: Employed(string w,int g){work=w;gongzi=g;} //Employed(){} string getwork(){return work;} int getgongzi(){return gongzi;} void setwork(string x){work=x;} } void setgongzi(int y){gongzi=y;} void show() { void Person::show(PERSON t[]); cout<<\"工作:\"< } class Unemployed:public Person { string pwork; int time; public: Unemployed(string pw,int tm){pwork=pw;time=tm;} //Unemployed(){} string getpwork(){return pwork;} int gettime(){return time;} void setpwork(string x){pwork=x;} void settime(int y){time=y;} void show() { void Person::show(PERSON t[]); cout<<\"工作:\"<