编译环境(Visual Studio 2017)
//文件储存的方式实现通讯录 AddressList
#include <stdio.h>
#include <windows.h>
#include <string.h>
//#include <stdlib.h>
#pragma warning(disable: 4996)
static int People_num_all = 0;//通讯录人数
///文件操作
typedef struct Address_Lsit
{
int age;
int phone_num;
char name[20];
char sex[3];
char Address[50];
}Address_Lsit;
void File( Address_Lsit* AL)
{
FILE * fp;
if((fp = fopen("test.txt", "w")) != NULL)
{
for (int i = 0; i < People_num_all; i++)
{
fprintf(fp, "name:%s\t\t sex:%s\t\t age:%ld\t\ tphone_num:%ld\t\t Address:%s\t \n", AL->name, AL->sex, AL->age, AL->phone_num, AL->Address);
AL++;
}
}
fclose(fp);
}
void menu()
{
printf("----------------------------------------------\n");
printf("-------------- 通讯录菜单 -------------\n");
printf("----------------------------------------------\n");
printf("\n");
printf("\
1.添加联系人信息\n\
2.删除指定联系人信息\n\
3.查找指定联系人信息\n\
4.修改指定联系人信息\n\
5.显示所有联系人信息\n\
6.清空所有联系人\n \
7.以名字排序所有联系人\n\
0.退出");
printf("\n");
printf("\n");
printf("----------------------------------------------\n");
printf("请选择:");
}
//交换两个联系人信息
void exchange(struct