1.1
/*Menu()的功能:显示英文提示选单。
Quit()的功能:退出选单。
Create()的功能:创建新的通讯录。
Append()的功能:在通讯录的末尾写入新的信息,并返回选单。
Find():查询某人的信息,如果找到了,则显示该人的信息,如果没有则提示通讯录中没有此人的信息,并返回选单。
Alter()的功能:修改某人的信息,如果未找到要修改的人,则提示通讯录中没有此人的信息,并返回选单。
Delete()的功能:删除某人的信息,如果未找到要删除的人,则提示通讯录中没有此人的信息,并返回选单。
List()的功能:显示通讯录中的所有记录。
Save()的功能:保存通讯录中的所有记录到指定文件中。
Load()的功能:从指定文件中读取通讯录中的记录*/
#include<iostream>
using namespace std;
typedef struct info
{
int num;//联系人电话
char name[10];
char address[10];
}group;//information of students
typedef struct hash
{
int max;
int len;
group data[50];
}ha;
int find();
int alter();
int Dele();
int list();
int findnum();
int save();
int load();
ha p;
void creat(){
p.max=50;
p.len=0;
for(int i=0;i<=50;i++)
{p.data[i].num=0;}
}
void find(int a)//search the information by telephone number
{
int d,result;
d=a%50;//get the hash position
for(int i=0;i<=50;i++)
{
if(p.data[d].num==a)
{result=d;}//succeed searching!
else for(int t=1;1;t++)
if(p.data[d+t*t].num==a&&d+t*t<=49)
{result=d;}
else if(p.data[d-t*t].num==a&&d+t*t>=0)
{result=d;}
};
void append()
{
int position;
if
}
}