/***********************************************************
*版权所有 (C)2016. Hu Xinyue
*
*文件名称: txl.cpp
*文件标识: 无
*内容摘要: 该项目的所有函数的实现
*其他说明: 无
*当前版本: V1.0
*作 者: 胡馨月
*完成日期: 20161229
*
*修改记录1:
*修改日期: 20161229
*版本号: V1.0
*修改人: Hu Xinyue
*修改内容:
********************************************************************/
#include"txl.h"
/***********************************************************
*功能描述: 主函数,负责项目的调度
*输入参数: 无
*输出参数: 无
*返回值: 无
*其他说明: 无
*************************************************************/
int main() //主函数
{
creat();
huanying();
Save();
return 0;
}
/***********************************************************
*功能描述:新建或者打开已经存在的文件,从中读取内容
*输入参数: 无
*输出参数: 无
*返回值: 无
*其他说明: 无
*************************************************************/
void creat() //创建或读取文件
{
int j;
long k;
fp=fopen("数据文件.txt","r t");
if(fp!=NULL)
{
for(i=0; i<=maxlen; i++ )
{
j=fgetc(fp);
if(j==EOF)
return;
k=i;
fseek(fp,k*sizeof(struct persons),0);
fread(&persons[i],sizeof(struct persons),1,fp);
s=(linklist)malloc(sizeof(listnode));
s->num=persons[i].num;
strcpy(s->name,persons[i].name);
strcpy(s->e_addr,persons[i].e_addr);
strcpy(s->tel_no,persons[i].tel_no);
s->sim_no=persons[i].sim_no;
strcpy(s->arch,persons[i].arch);
s->cishu=persons[i].cishu;
if(head==NULL) //若为空,则建立新节点
{
head=s;
r=head;
head->next=NULL;
}
else //否则,插入节点
{
r->next=s;
r=s;
r->next=NULL;
}
}
fclose(fp);
}
else //存入文件
{
fp=fopen("数据文件.txt","w");
i=1;
}
}
/***********************************************************
*功能描述: 开始界面,提供选择操作的界面
*输入参数: 选择键
*输出参数: 无
*返回值: 无
*其他说明: 通过选择进入各种功能
*************************************************************/
void huanying() //选择界面
{
system("cls"); //清屏
do
{
xiaotu();
cout<<" 欢迎使用通讯录管理系统 "<<endl;
cout<<endl;
cout<<" +---------------------------------------------------------+"<<endl;
cout<<" + 1.显示分组信息 5.拨号 +"<<endl;
cout<<" + 2.删除信息 6.保存并退出 +"<<endl;
cout<<" + 3.添加信息 7.查找信息 +"<<endl;
cout<<" + 4.编辑信息 8.输出全部信息 +"<<endl;
cout<<" +---------------------------------------------------------+"<<endl;
cout<<endl;
cout<<"请输入您的的选择-----"<<endl;
cin>>ch;
switch(ch) //选择操作
{
case '1':
system("cls");
Show();
break;
case '2':
system("cls");
Delete();
break;
case '3':
system("cls");
Input();
break;
case '4':
system("cls");
Alter();
break;
case '5':
system("cls");
Dial();
break;
case '6':
system("cls");
Save();
fclose(fp);
xiaotu();
exit(0);
break;
case '7':
system("cls");
find();
break;
case '8':
system("cls");
shuchu();
break;
default:
printf("\n\t*********************************\n");
printf("\n\t 请输入 1-8!!! \n");
printf("\n\t**********************************");
break;
}
}
while(1);
}
/***********************************************************
*功能描述: 添加一个人的信息;插入到链表
*输入参数: 联系人信息
*输出参数&#x