c++ 课程设计 简单电话簿管理报告(2)

2020-02-21 23:20

if(a==0) { cout<<\操作取消,未修改任何用户信息!\ return; } else if(a==1) { p->setphone_num(ph_num); p->setsex(gender); cout<<\已修改!\ return; } else if(a!=0&&a!=1) cout<<\输入错误!\ return; }

//按姓名查找

Fphone *UserDatabase::query(char *na) {

/* int low=0,mid,up;//折半法查找,可与下面程序替换 Fphone *p=user; up=nElem-1; while(low<=up) { mid=(low+up)/2; if(strcmp(p[mid].getname(),na)==0) return &p[mid]; else if(strcmp(p[mid].getname(),na)>0) up=mid-1; else low=mid+1; } return NULL;*/

Fphone *p=user; //顺序查找 int i=0; while(i<=nElem) { if((strcmp(p->getname(),na))==0) return p; p++; i++; } return NULL; }

//按姓名升序排序

void UserDatabase::sorta_name() { Fphone k; int i,j; for(i=1;i=0&&(strcmp(k.getname(),user[j].getname())<0);j--) { /*strcpy(user[j+1].getname(),user[j].getname()); strcpy(user[j+1].getphone_num(),user[j].getphone_num());*/ user[j+1]=user[j];//采用整体覆盖方式 } /*strcpy(user[j+1].getname(),k.getname()); strcpy(user[j+1].getphone_num(),k.getphone_num());*/ user[j+1]=k;//采用整体覆盖方式 } cout<<\已录入!\}

//按电话号码升序排序

void UserDatabase::sorta_phonenum() { int i,j,p; Fphone k;

for(i=0;i

if(strcmp(user[j].getphone_num(),user[p].getphone_num())<0) if(p!=i) { k=user[p]; user[p]=user[i]; user[i]=k; } }

cout<<\排序完成\}

//按姓名降序排序

void UserDatabase::sort_name() { Fphone tempt; int i,m=(nElem+1)/2; for(i=0;i

//按电话号码降序排序

void UserDatabase::sort_phonenum() { int i,j; Fphone k; for(i=0;i

//输出所有男同学用户信息 void UserDatabase::dispmen() { int i,n=0;

cout<

if((user+i)->getsex()==1) { cout<getname()

<getphone_num()<

if(n==0) {

system(\ system(\

} } }

cout<

//输出所有女同学用户信息 void UserDatabase::dispwomen() { int i,n=0;

cout<

if(!(user+i)->getsex()) { cout<getname()

<getphone_num()<

if(n==0) {

system(\ system(\ } } }

cout<

//输出所有用户信息

void UserDatabase::disp() { if(user==NULL) cout<<\空电话簿。\ int i,n=0;

cout<

if((user+i)->getsex()==1) cout<getname()

<getphone_num()<getname()

<getphone_num()<

if(n==0) {

system(\ system(\ } }

cout<

//获取头指针

Fphone *UserDatabase::getuser() { return user; }

//主函数 void main() { char i; UserDatabase d; for(;;) { cout<<\***\ cout<

cout<

cout<<\ 2-修改记录\

cout<<\ 3-删除记录\ cout<<\ 4-查找(按姓名)\

cout<<\ 5-排序\

cout<<\ 6-显示记录\

cout<<\ 7-全删\

cout<<\ 0-退出\

cout<<\ 请输入选择:\

cin>>i; switch(i) { case '1' : { system(\ cout<<\***\ cout<<\ 增加记录\

int gender; cout<>name; cout<

else { cout<<\请输入用户号码和性别男<1>女<0>:\

cin>>num>>gender; d.add_record(name,num,gender); d.sorta_name(); } system(\ system(\ break; } case '2' : { system(\ cout<<\***\ cout<<\ 修改记录\

cout<<\

***\ char name[20],num[15]; int gender; cout<>name; cout<getsex()==1) cout<<\男\ else cout<<\女\ cout<<\请输入用户号码和性别男<1>女<0>:\ cin>>num>>gender; d.modify_record(d.query(name),num,gender); d.sorta_name(); } else cout<<\不存在此用户,您无法修改,请先添加。\ system(\ system(\ break; } case '3': { system(\ cout<<\***\ cout<<\ 删除记录\

cout<<\***\ char name[20]; cout<>name; cout<


c++ 课程设计 简单电话簿管理报告(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:如何理解“经济全球化是一把双刃剑”?

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: