用C语言实现-通讯录(静态)

在掌握了C语言的指针,函数,结构体,并对他们有着一些了解之后。

可以试着完成一个通讯录。

实现思路:

一、创建好结构体

要做一个通讯录,它保存的联系人信息肯定有很多种类,可以把他们封装成一个结构体。

其中联系人包含信息有:姓名,性别,年龄,电话,住址

//联系人信息:姓名,性别,年龄,电话,住址
typedef struct PeoInFo
{
	char name[NAME_MAX];
	char sex[SEX_MAX];
	int age;
	char tele[TELE_MAX];
	char addr[ADDR_MAX];
}PeoInFo;            //这里重命名结构体名字为PeoInFo(增加可读性)

那通讯录其实就算这么多个联系人信息的集合呀。(结构体嵌套)

因此可以创建一个通讯录结构体类型,其中包含:

1.联系人信息

2.保存了多少个信息

就是这个样子:

用C语言实现-通讯录(静态)_第1张图片

 

二、整体框架

依然是熟悉的do while结构。先打印菜单,再根据菜单中的提示完成相应的选择。

为显得简洁易读,这里创建三个工作单元。

test.c: 代码的逻辑思路。

contact.h: 所用到的头文件和函数的声明、全局变量的定义

contact.h:        实现的函数的具体代码

先将test.c的代码放出来:

#define _CRT_SECURE_NO_WARNINGS 1

#include"contact.h"
void menu()
{
	printf("\n\n\n************************************\n");
	printf("*****  1.Add      2.Del        *****\n");
	printf("*****  3.Search   4.Modify     *****\n");
	printf("*****  5.Sort     6.Print      *****\n");
	printf("*****  0.Exit                  *****\n");
	printf("************************************\n");
}


void test()
{
	int input = 0;
	//创建通讯录
	Contact con;

	//初始化通讯录
	InitContact(&con);
	
	do
	{
		menu();
		printf("请选择:");
		scanf("%d", &input);
		switch (input)                //这里case部分用到了contact.h中的枚举类型。增加程序可读性
		{
		case ADD:
			AddContact(&con);        //增
			break;
		case DEL:
			DeleContact(&con)

你可能感兴趣的:(C进阶,c语言)