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
//按电话号码升序排序
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< < if(n==0) { system(\ system(\ } } } cout< //输出所有女同学用户信息 void UserDatabase::dispwomen() { int i,n=0; cout< if(!(user+i)->getsex()) { cout< < if(n==0) { system(\ system(\ } } } cout< //输出所有用户信息 void UserDatabase::disp() { if(user==NULL) cout<<\空电话簿。\ int i,n=0; cout< if((user+i)->getsex()==1) cout< < < 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< 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< cout<<\***\ char name[20]; cout<