booklink

【booklink】

booklink

文章插图
tel[i];}
int key=H(tel,11);
cout<<"存储地址 :"<<key<<endl;
strcpy(HT[key]->tel,tel);strcpy(HT1[key]->tel,tel);//电话号码
cout<<"输入联系人:";
cin>>name;
int key1=H1(name);cout<<"存储地址 :"<<key1<<endl;
s1->name=name;//姓
s->name=name;//名
cout<<"输入联系人地址:";
cin>>address;
s->address=address;//地
s1->address=address;//址
s->next=HT[key]->next;HT[key]->next=s;
s1->next=HT1[key1]->next;HT1[key1]->next=s1;
}
void findtel()
{

char tel[11];
cout<<"输入要查找的电话号码:";
for(int i=0;i<11;i++){cin>>tel[i];}
int key=H(tel,11);
cout<<"存储地址 :"<<key<<endl;
linkbook *p;
p=HT[key]->next;
if(p==NULL)cout<<"查找失败"<<endl;
else if(p->tel==tel)p->print();
else
{
while((p->tel!=tel)&&(p->next!=NULL))
p=p->next;
if(p->next==NULL)cout<<"查找失败"<<endl;
else
p->print();
}
}
void findname()
{
string name;
cout<<"输入要查找的联系人:";
cin>>name;
int key=H1(name);
cout<<"存储地址 :"<<key<<endl;
linkbook *p;
p=HT1[key]->next;
if(p==NULL)cout<<"查找失败"<<endl;
else if(p->name==name)p->print();
else
{
while((p->name!=name)&&(p->next!=NULL))
p=p->next;
if(p->next==NULL)cout<<"查找失败"<<endl;
else
p->print();
}
}
};
void menu(hash s)
{s.inihash();
cout<<"---散列表的设计与实现---"<<endl;
cout<<"1 输入联系人信息"<<endl;
cout<<"2 电话查找"<<endl;
cout<<"3 姓名查找"<<endl;
cout<<"4 退出系统"<<endl;
cout<<"-------欢迎使用---------"<<endl;
cout<<"输入功能选项 :";
int option;
cin>>option;
while(1){
switch(option){
case 1:s.creattel();break;
case 2:s.findtel();break;
case 3:s.findname();break;
case 4:exit(0);break;
}
cout<<"输入功能选项 :";
cin>>option;
}
}
int main()
{
hash s;
menu(s);
}

你看看吧 。

    推荐阅读