在Linux环境下用C语言实现通讯录,可增删查改,通过文件保存数据。
大致框架
1.头文件child.h
2.子函数child.c
3.主函数
程序代码:
child.h
#ifndef CHILD_H
#define CHILD_H
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#define NAME 20
#define PHONE 12
#define SEX 5
#define ADDR 20
#define MAX 100
enum{
ext,
look,
add,
del,
alter,
find
};
struct data{
char name[NAME];
char sex[SEX];
char phone[PHONE];
char addr[ADDR];
};
struct ps{
struct data *dat;
int count;
int sz;
};
void menu();
void Init(struct ps *p);
void Look(const struct ps *p);
void Add(struct ps *p);
void Find(const struct ps *p);
void Del(struct ps *p);
void Alter(struct ps *p);
void Save(struct ps *p);
#endif
child.c
#include"child.h"
//查找功能函数
static int Find_fun(const struct ps *p, char buf[])
{
int i;
for(i=0; i < p->sz; i++)
{
if(!strcmp(p->dat[i].name, buf))
{
return i;
}
}
if(i == p->sz)
{
return -1;
}
}
//扩容函数
int kuoron(struct ps *p)
{
struct data *p2;
if(p->sz >= p->count)
{
p2 = (struct data *)realloc(p