首页
学习
活动
专区
工具
TVP
发布

C语言】动态通讯

今天来改进一下静态版本的通讯录,让通讯录的内存空间可以随大小变化; 一、测试部分 测试部分的改动不大,主要的改动还是在函数实现的部分和声明部分; void menu() { printf...,改用malloc开辟空间 添加联系人的方式,当空间容量不够,使用realloc拓展空间 退出通讯录,需要使用free释放空间以及置空; //动态版本初始化通讯录 void InitContact...); pc->sz = 0; pc->Capacity = DEFAULT_SZ; } //查找函数 //加static修饰这个函数是为了这个函数只能在这个.c文件内用...Capacity;//通讯录当前的容量 }Contact; //初始化通讯录 void InitContact(Contact* pc); //打印通讯录...void SearchContact(Contact* pc); //修改通讯录的数据 void ModifyContact(Contact* pc); //排序通讯

8510

C语言】静态通讯

今天我们来实现一个静态的通讯录,该通讯录可以用来存储100个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址 提供方法: 添加联系人信息 删除指定联系人信息 查找指定联系人信息 修改指定联系人信息...显示所有联系人信息 以名字排序所有联系人 清空所有联系人 一、 测试部分 先给一个菜单menu();选择后进入相应的模块。...sz = 0; memset(pc->data, 0, sizeof(pc->data)); } //查找函数 //加static修饰这个函数是为了这个函数只能在这个.c文件内用...}Contact; //初始化通讯录 void InitContact(Contact* pc); //打印通讯录 void ShowContact(Contact...void SearchContact(Contact* pc); //修改通讯录的数据 void ModifyContact(Contact* pc); //排序通讯

5910
您找到你想要的搜索结果了吗?
是的
没有找到

C语言小程序:通讯

1.实现功能 本文将采用C语言来实现一个简单的通讯录,要求功能如下 //实现一个通讯录 //1.可以保存100个人的信息 //2.增加人的信息 //3.删除指定联系人的信息 //4.查找 //5.修改...//6.排序 //7.显示所有联系人 下面我们来一步步实现 2.实现细节与具体思路 1.主程序设计 首先,设计一个主程序来对于通讯录进行一个整体的设计,它的功能我们用函数来进行包装,这样可以增加代码的可读性...功能设计 1.创建一个通讯录并进行初始化 首先我们要明确,一个通讯录里放的应该是什么样的信息,既然是通讯录,肯定得有名字和电话号码,除此之外,也可以有性别,住址或者年龄,为了简单,我们就设计这些元素.我们用一个结构体来存放这些变量...,命名为PeopleInfo类型代表联系人的信息.接下来创建通讯录,通讯录里要有联系人的信息,同时还得记录通讯录里人的个数,这里我们也可以用一个结构体Contact来存放它们. typedef struct...AddContact(Contact* pc) { assert(pc); //判断通讯录满没满 if (pc->sz == DATA_MAX) { printf("通讯录已满,无法增加\

8810

c语言实现通讯

前言 目录 前言 一、通讯录: 1.1 通讯录介绍: 1.2 通讯录功能介绍: 效果展示: 二、通讯录的实现: 2.1 通讯录类型的声明: 2.2 通讯录的初始化: 2.3 添加联系人函数: 2.4...查询指定联系人函数: 2.5 删除联系人函数 动态图解: 2.6 修改指定联系人函数 总结 总代码: 主测试区: 函数实现区: 函数声明区: 一、通讯录: 1.1 通讯录介绍: 本次通讯录采用...用一个参数 sz 记录当前联系人个数. 1.2 通讯录功能介绍: 1.添加联系人 2.删除联系人 3.修改联系人 4.查询联系人 5.展示通讯录 效果展示: 二、通讯录的实现: 2.1...: 通讯录 的大体框架已经建好,但是那只是通讯录的类型,我们应当利用类型创建变量并进行合理的初始化操作....定义 通讯录 变量: Contact cont;//创建通讯录cont 对 通讯录 进行合理的 初始化 操作.

92630

通讯录(C语言版)(静态通讯录)

引言: 1.菜单 通讯录也如同游戏,需要菜单来供使用者选择,因此要用do...while......(第一次看我文章的小伙伴可以看看我这两篇文章啦:1.扫雷游戏(有讲解)-CSDN博客 2.猜数字游戏(C语言实现)-CSDN博客) 2.功能总结 通讯录有很多功能,因此我们在做出它之前总结一下他的功能...包含重要的函数实现部分 3.test.c 包含菜单和某些变量的定义(如:扫雷中的棋盘) 开始制作 1.菜单 还是熟悉的do...while...啦 //菜单 void menu() { //添加,删除...4.test.c函数的实现 #define _CRT_SECURE_NO_WARNINGS 1 #include "contact.h" /*静态通讯录*/ void menu()...#define _CRT_SECURE_NO_WARNINGS 1 #include "contact.h" /*静态通讯录*/ void menu() { //添加,删除,显示

9810

C语言通讯录功能的实现

C语言通讯录功能的实现 一、项目需求: 我们需要一个通讯录,可以用来存储1000个人的信息,每个人的信息包括:姓名、性别、年龄、电话、住址。...并且在通讯录中要求实现下述功能: 添加联系人信息 删除指定联系人信息 查找指定联系人信息 修改指定联系人信息 显示所有联系人信息 以名字排序所有联系人 二、模块化代码 在代码编辑中,为了避免代码过于冗长...我们一般将代码分多成多个模块。...建立如下文件 contact.h (头文件,用来引入库函数,存放声明) contact.c (实现通讯录每个部分的功能) test.c (主函数,用于测试通讯录功能是否成功实现) 注意:.c文件需要使用自定义头文件的声明...default: printf("您输入错误,请重新输入\n"); break; } } while (input); return 0; } 五、反思和总结 这里只是一个简单的C语言项目

5310

C语言通讯录《静态内存版本》

枚举类型 初始化通讯录 增加通讯录的信息  打印通讯录的信息  删除通讯录的信息  查找通讯录的信息  修改指定通讯录人的信息 排查通讯录当中人员的信息 ✨模块化代码实现 test.c address_book.c...  传统方式编程→所有的函数均放在main.c里,若使用的模块比较多,则一个文件内会有很多的代码,不利于代码的组织和管理,而且很影响编程者的思路。...模块化编程:把各个模块的代码放在不同的.c文件里,在.h文件里提供外部可调用函数的声明,其它.c文件想使用其中的代码时,只需要#include "XXX.h"文件即可。...传统方式编程:所有的函数均放在main.c里,若使用的模块比较多,则一个文件内会有很多的代码,不利于代码的组织和管理,而且很影响编程者的思路。...模块化编程:把各个模块的代码放在不同的.c文件里,在.h文件里提供外部可调用函数的声明,其它.c文件想使用其中的代码时,只需要#include "XXX.h"文件即可。

87650

C语言实现通讯录(超详细)

7.显示所有联系人信息  2.通讯录的实现 2.1创建两个源文件和一个头文件 首先我们创建contact.c和test.c,contact.h,在头文件中包含了程序所需的各种头文件并且实现对各种函数的声明...这样做的目的是为了各个文件可以处理各自模块的功能,增强逻辑性和代码的清晰度,使得可读性更高。  ...2.2搭建构架 1.菜单打印 首先在test.c这个源文件里面把菜单打印出来,直接使用printf函数打印出通讯录的功能即可。...typedef struct Contact { PeoInfom data[MAX];//存放数据 int sz;//记录的是当前通讯录中存放的人的信息个数 }Contact; 在test.c的主函数里面创建通讯录...InitContact(&con);//初始化通讯录 在contact.h中声明函数: void InitContact(Contact* pc);//初始化通讯录 在contact.c中进行函数的实现

13610

C语言】文件版&动态版通讯

今天我们再改进一下之前的通讯录,现在可以把通讯录的信息保存在文件当中; 一、测试部分 本次保存和读取通讯录的内容都是以二进制的形式保存和读取; 对于测试部分,改动的地方在于销毁通讯录之前,需要把通讯录的内容保存到文件中...,所以在销毁通讯录的函数前加了一个SaveContact函数保存通讯录;函数的具体实现看函数实现部分; #include "C_File Dynamic Contact.h" void menu...,并实现了; 但是在保存之后的通讯录,我们在下一次打开时,是不是也最好可以把通讯录中的内容读取出来呢,所以我们在初始化通讯录函数中加了这么个函数-LoadContact,加载通讯录的内容,函数的具体实现如下...; #include "C_File Dynamic Contact.h" void CheakCapacity(Contact* pc); //加载文件的信息到通讯录...LoadContact(pc); } //查找函数 //加static修饰这个函数是为了这个函数只能在这个.c文件内用,出了这个文件就用不了 static int FindByName

5910

C语言通讯录《动态内存版本》

address_book.c address_book.h test.c 最后 前言 这篇博客带大家实现通讯录的一个动态内存增长的一个版本,在上一片博客当中我们介绍了通讯录静态版本的一个实现...,如果对静态版本感兴趣的话可以看看ヾ(^▽^*))) ✨链接→【C语言通讯录《静态内存版本》_謓泽的博客-CSDN博客✨ 动态内存版本  ①:通讯录初始化后,能够存放三个人的信息。...当然如果你不熟悉什么是动态内存的话,可以看看博主写的这篇博客ヾ(^▽^*))) ✨链接→【C语言】动态内存开辟的使用『malloc』✨ 代码改动  根据上篇的静态通讯录进行了一点改动,改动如下所示...模块化代码实现 ​​ address_book.c 示例代码如下↓  #define _CRT_SECURE_NO_WARNINGS 1 #include"address_book.h"...; //销毁通讯录 void Destory_Contact(Contact* pc); test.c 示例代码如下↓   #include"address_book.h" #include

47820

C语言通讯录《信息写到文件版本》

读文件操作  模块化代码实现  Ⅰ→  test.c Ⅱ→address_book.h Ⅲ→address_book.c ✨最后✨ 概述  这个是在之前的动态版本进行添加,如果你不清楚通讯录的静态或者是动态怎么实现...可以看看博主写的前面两篇通讯录的静态和动态的实现↓ 链接→【C语言通讯录《静态内存版本》_謓泽的博客-CSDN博客 链接→【C语言通讯录《动态内存版本》_謓泽的博客-CSDN博客 ----...如果你不会文件操作的话,可以看看我前面写过的内存的一篇博客来看看⇣ ✨链接→【C语言】内存函数_謓泽的博客-CSDN博客 增添の功能↓ (1)→当通讯录退出的时候,把信息写到文件里面。...---- 模块化代码实现  Ⅰ→  test.c 代码示例如下↓ /* @Note1:当通讯录退出的时候,把信息写道文件。 @Note2:当通讯录初始化的时候,加载文件的信息。...} ✨最后✨ 那么这个就已经实现了通讯录的最终版本了,这个项目适合已经把C语言学完的人做。巩固自己以往的能力,做个这个提升自己逻辑思维和代码能力的一个小的项目

1.2K40

C语言实战小项目——通讯录2.0

动态通讯录的实现 ——接上篇1.0版本静态通讯录的优化2.0版本 C语言实战小项目——通讯录1.0—— 博客入口 一.通讯录的各项功能及主体框架   本次优化版本与上一次的1.0版本相比,改变了原有的固定内存存储通讯录联系人的方式...1.通讯录的要求实现功能 0.退出菜单 1.添加联系人信息 2.删除指定名字的联系人信息 3.修改联系人的信息 4.查找好友的信息 5.展示通讯录联系人信息   我们根据通讯录的各项功能进行编写页面菜单...ps.date[i].age, ps.date[i].sex, ps.date[i].tel, ps.date[i].addr); } } } 整体代码展示 1.test.c...\n"); break; } } while(input); return 0; } 2.contact.c 通讯录函数文件 #define _CRT_SECURE_NO_WARNINGS...这就是通讯录的2.0版本,后续将持续更新,我们将在3.0版本升级为拥有文件操作保存联系人信息的通讯录。   欢迎大家的关注与欣赏!! 未完待续… C语言实战项目——通讯录3.0已更新

96920

C语言实战小项目——通讯录3.0

可实现文件保存的通讯录的实现 ——接上篇2.0版本动态通讯录的优化3.0版本 C语言实战小项目——通讯录2.0—— 博客入口 一、优化改进部分   在上次的2.0版本中,我们已经拥有了可实现动态内存操作的通讯录版本..."); exit(1); } //加载文件 LoadContact(ps); } 二、整体代码展示 1.test.c 通讯录主体框架测试文件 #define _CRT_SECURE_NO_WARNINGS...//3.修改联系人的信息 //4.查找好友的信息 //5.展示通讯录联系人信息 //6.对通讯录指定信息进行排序 printf("****************************...\n"); break; } } while (input); return 0; } 2.contact.c 通讯录函数文件 #define _CRT_SECURE_NO_WARNINGS...2.0版本——动态通讯录的实现 3.0版本——可文件保存的通讯录的实现   较为完整的实现了一个通讯录的大部分功能,当然我们还可以再次进行优化,添加一些更有需要的功能等,我们的C语言实战项目——通讯录到这里就结束了

77430
领券