C语言--通讯录

本文介绍如何在Linux系统中使用C语言编写一个具备增删查改功能的通讯录程序,程序数据通过文件持久化存储。包含头文件child.h、子函数实现child.c以及主函数代码tonxunlu.c,利用makefile进行编译。
摘要由CSDN通过智能技术生成

在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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值