基于c语言的通讯录管理系统设计与实现
c语言学生通讯录管理系统设计

C语言学生通讯录管理系统设计1. 系统概述本文档描述了一个基于C语言的学生通讯录管理系统的设计。
该系统旨在提供一个简单而有效的方式来管理学校中学生的联系信息。
2. 功能需求学生通讯录管理系统需要满足以下功能需求:•添加学生信息:包括学生姓名、学号、年级、班级、电话号码等。
•删除学生信息:根据学号或姓名删除指定学生的信息。
•修改学生信息:根据学号或姓名修改指定学生的信息。
•查询学生信息:根据学号或姓名查询指定学生的信息。
•显示所有学生信息:展示学生通讯录中所有学生的信息。
3. 系统设计3.1 数据结构系统使用以下数据结构来表示学生通讯录:struct Student {char name[50];int studentID;int grade;int class;char phoneNumber[20];};struct StudentDirectory {struct Student students[100];int count;};学生通讯录使用一个结构体数组来存储学生信息,每个学生信息包含姓名、学号、年级、班级和电话号码。
StudentDirectory结构体用于存储整个学生通讯录,count表示当前学生通讯录中的学生数量。
3.2 模块设计系统的实现可以分为以下几个模块:•输入输出模块:负责从用户获取输入以及将结果输出给用户。
•添加学生信息模块:负责向学生通讯录中添加新的学生信息。
•删除学生信息模块:负责从学生通讯录中删除指定学生的信息。
•修改学生信息模块:负责修改学生通讯录中指定学生的信息。
•查询学生信息模块:负责查询学生通讯录中指定学生的信息。
•显示学生信息模块:负责展示学生通讯录中所有学生的信息。
3.3 系统流程下图展示了学生通讯录管理系统的基本流程:flowchart LRA[开始]B[用户输入选项]C{选项是添加学生信息?}D[执行添加学生信息模块]E{选项是删除学生信息?}F[执行删除学生信息模块]G{选项是修改学生信息?}H[执行修改学生信息模块]I{选项是查询学生信息?}J[执行查询学生信息模块]K{选项是显示所有学生信息?}L[执行显示学生信息模块]M[结束]A --> BB -- Yes --> CB -- No --> EC -- Yes --> DC -- No --> ED --> ME -- Yes --> FE -- No --> GF --> MG -- Yes --> HG -- No --> IH --> MI -- Yes --> JI -- No --> KJ --> MK -- Yes --> LK -- No --> ML --> M4. 系统实现系统的具体实现可以参考下面的示例代码:```c #include <stdio.h>struct Student { char name[50]; int studentID; int grade; int class; char phoneNumber[20]; };struct StudentDirectory { struct Student students[100]; int count; };void addStudent(struct StudentDirectory* directory) { // 从用户获取学生信息并添加到学生通讯录中 }void deleteStudent(struct StudentDirectory* directory) { // 从用户获取学生信息并从学生通讯录中删除 }void modifyStudent(struct StudentDirectory* directory) { // 从用户获取学生信息并修改学生通讯录中指定学生的信息 }void queryStudent(struct StudentDirectory* directory) { // 从用户获取学生信息并查询学生通讯录中指定学生的信息 }void showAllStudents(struct StudentDirectory* directory) { // 显示学生通讯录中所有学生的信息 }int main() { struct StudentDirectory directory; directory.count = 0;int option;while (1) {printf(\。
通讯录管理系统c语言课程设计报告(一)

通讯录管理系统c语言课程设计报告(一)通讯录管理系统C语言课程设计报告1. 简介通讯录管理系统是一款基于C语言开发的软件,旨在帮助用户方便地存储、查找、编辑和删除联系人信息。
本报告将对该系统的功能和设计进行详细介绍。
2. 系统功能通讯录管理系统具备以下主要功能:•添加联系人:用户可以输入联系人的姓名、电话号码、电子邮件等信息,并将其添加到通讯录中。
•查找联系人:用户可以根据姓名或电话号码等方式,快速查找通讯录中的联系人信息。
•编辑联系人:用户可以修改通讯录中已有联系人的信息,如电话号码、电子邮件等。
•删除联系人:用户可以从通讯录中删除特定联系人。
•显示通讯录:用户可以查看通讯录中的所有联系人信息。
•退出系统:用户可以选择退出通讯录管理系统。
3. 系统设计数据结构通讯录管理系统主要使用以下数据结构存储联系人信息:•结构体:定义了一个联系人的数据结构,包括姓名、电话号码、电子邮件等字段。
•数组:用于存储多个联系人信息,构成通讯录。
数组的每个元素对应一个联系人的结构体。
主要函数添加联系人函数void addContact(struct Contact contacts[], int *num Contacts)•功能:向通讯录中添加一个联系人。
•输入参数:通讯录数组contacts、通讯录中联系人数量numContacts的指针。
•输出:无。
查找联系人函数void searchContact(struct Contact contacts[], int n umContacts)•功能:根据用户提供的关键词在通讯录中查找联系人。
•输入参数:通讯录数组contacts、通讯录中联系人数量numContacts。
•输出:无。
编辑联系人函数void editContact(struct Contact contacts[], int num Contacts)•功能:根据用户选择的联系人在通讯录中编辑联系人信息。
通讯录管理系统c语言课程设计报告顺序储存

通讯录管理系统C语言课程设计报告一、引言通讯录管理系统是一种能够对联系人信息进行存储、增删改查等管理操作的系统。
在本课程设计中,我设计并实现了一个基于C语言实现的通讯录管理系统,采用顺序储存的数据结构。
本报告将介绍通讯录管理系统的设计思路、功能特点以及实现过程。
二、需求分析通讯录管理系统主要包括以下功能:1.添加联系人信息2.删除联系人信息3.修改联系人信息4.查询联系人信息5.显示所有联系人信息在设计系统时,需要考虑如何高效地实现上述功能,并保证数据的准确性和一致性。
三、设计思路为了实现通讯录管理系统,我采用了顺序储存的方式存储联系人信息。
具体而言,我使用结构体数组来存储联系人的姓名、电话号码等信息,通过数组下标来实现对联系人信息的操作。
四、功能实现1. 添加联系人信息用户通过输入联系人的姓名、电话号码等信息,将新的联系人信息添加到通讯录中。
系统会提示用户输入相关信息,并将信息加入到结构体数组中。
2. 删除联系人信息用户可以根据联系人的姓名或电话号码来删除指定的联系人信息。
系统会遍历结构体数组,找到相应的联系人信息并删除。
3. 修改联系人信息用户可以选择需要修改的联系人信息,然后输入新的信息进行修改。
系统会在结构体数组中找到对应的联系人信息,并进行更新操作。
4. 查询联系人信息用户可以通过姓名或电话号码查询指定联系人的信息。
系统会输出符合条件的联系人信息。
5. 显示所有联系人信息系统会将通讯录中所有联系人的信息依次显示出来,方便用户查看。
五、总结通过本次课程设计,我深入理解了C语言的数据结构和实现原理,同时锻炼了对问题的分析与解决能力。
通讯录管理系统是一个简单且实用的应用,通过本次设计,我对通讯录系统的设计与实现有了更深入的认识,也提高了编程的能力。
六、参考文献暂无以上是对通讯录管理系统C语言课程设计报告的简要介绍,希望能够对您有所帮助。
c语言通讯录管理系统课程设计报告

c语言通讯录管理系统课程设计报告报告标题:C语言通讯录管理系统课程设计报告1. 引言本报告旨在介绍并分析本次课程设计所涉及到的C语言通讯录管理系统的设计与实现过程。
2. 设计目标•开发一个功能完善的通讯录管理系统•实现基本的通讯录管理功能,包括添加、删除、查询、修改联系人信息等•提供良好的用户交互界面,方便用户使用该系统•提高系统的效率和稳定性,确保数据的安全性3. 系统设计概述本通讯录管理系统基于C语言开发,主要包括以下几个模块: - 用户管理模块:实现用户注册、登录、退出等功能 - 联系人管理模块:实现联系人的增删改查等功能 - 数据存储模块:使用文件系统进行数据的读写操作数据结构设计本系统使用了以下数据结构: - 用户结构体:包含用户名、密码等信息 - 联系人结构体:包含姓名、电话号码、地址等信息功能模块设计•用户管理模块:提供用户注册、登录、退出等功能•联系人管理模块:提供联系人的添加、删除、查询、修改等功能•数据存储模块:实现数据的读取与保存功能4. 实现细节用户管理模块•注册功能:获取用户输入的用户名和密码,存储到用户数据文件中•登录功能:根据用户输入的用户名和密码,从用户数据文件中验证登录信息•退出功能:退出当前用户,返回系统主界面联系人管理模块•添加联系人功能:获取用户输入的联系人信息,存储到联系人数据文件中•删除联系人功能:根据用户输入的联系人姓名,从联系人数据文件中删除对应的联系人信息•查询联系人功能:根据用户输入的关键词,从联系人数据文件中查找匹配的联系人信息•修改联系人功能:根据用户输入的联系人姓名,从联系人数据文件中修改对应的联系人信息数据存储模块•读取数据功能:从文件中读取用户和联系人的数据•保存数据功能:将用户和联系人的数据保存到文件中5. 测试与优化本系统在开发过程中进行了多次测试和优化,确保系统的稳定性和功能完善性。
通过模拟用户的操作,检测系统的响应速度、功能是否正常等,并对系统进行了性能调优和bug修复。
c通讯录管理系统实验报告

C通讯录管理系统实验报告1. 引言通讯录是我们日常生活中非常常见的一种信息管理工具,用于存储和管理联系人的信息。
本实验旨在设计和实现一个基于C语言的通讯录管理系统。
本文将介绍系统的设计思路、功能实现以及使用过程中的注意事项。
2. 设计思路通讯录管理系统主要包括以下功能: - 添加联系人:输入联系人的姓名、电话号码和电子邮件信息,将其添加到通讯录中。
- 删除联系人:输入联系人的姓名,从通讯录中删除该联系人。
- 查找联系人:输入联系人的姓名,系统将显示该联系人的详细信息。
- 修改联系人:输入联系人的姓名,可以修改该联系人的电话号码和电子邮件信息。
- 显示所有联系人:系统将按照添加的顺序显示通讯录中所有联系人的信息。
在设计过程中,我们采用了如下的步骤思考: 1. 定义联系人结构体:使用结构体来存储联系人的姓名、电话号码和电子邮件信息。
2. 定义通讯录结构体:使用动态数组来存储联系人的信息,以及记录通讯录的当前大小和最大容量。
3. 实现添加联系人功能:动态扩展通讯录数组的容量,将新的联系人信息添加到数组中。
4. 实现删除联系人功能:根据输入的姓名,查找并删除对应的联系人。
5. 实现查找联系人功能:根据输入的姓名,查找并显示对应联系人的详细信息。
6. 实现修改联系人功能:根据输入的姓名,查找并修改对应联系人的电话号码和电子邮件信息。
7. 实现显示所有联系人功能:按照添加的顺序,显示通讯录中所有联系人的信息。
3. 功能实现3.1 定义联系人结构体联系人结构体包含姓名、电话号码和电子邮件信息的变量。
3.2 定义通讯录结构体通讯录结构体包含一个指向联系人结构体的指针和记录当前容量和最大容量的变量。
3.3 实现添加联系人功能在添加联系人之前,首先需要判断通讯录数组是否已满。
如果已满,则需要动态扩展通讯录数组的容量。
然后,将新的联系人信息添加到数组中,更新通讯录的当前大小。
3.4 实现删除联系人功能根据输入的联系人姓名,在通讯录数组中查找对应的联系人。
c语言通讯录管理系统课程设计报告

C语言通讯录管理系统课程设计报告一、引言通讯录管理系统是一种常见的实用性软件,用于记录和管理个人或组织的联系人信息。
本文档旨在介绍一种基于C语言开发的通讯录管理系统的设计与实现。
通过本系统,用户可以方便地添加、删除、搜索和编辑联系人信息,实现了通讯录的基本功能。
二、系统需求分析本通讯录管理系统的主要功能包括: 1. 添加联系人:用户可以添加联系人的姓名、电话号码、邮箱等信息。
2. 删除联系人:用户可以根据联系人的姓名或电话号码删除对应的联系人信息。
3. 查找联系人:用户可以根据联系人的姓名或电话号码查找对应的联系人信息。
4. 修改联系人:用户可以修改已存在联系人的信息。
5. 显示所有联系人:用户可以查看通讯录中所有的联系人信息。
三、系统设计1. 数据结构设计为了实现通讯录管理系统,我们需要设计适当的数据结构来存储联系人信息。
在本设计中,使用结构体数组来表示每个联系人的信息,其中每个结构体包含姓名、电话号码、邮箱等成员变量。
struct Contact {char name[50];char phoneNumber[20];char email[50];};2. 功能模块设计本系统主要包含以下几个功能模块:a. 添加联系人模块用户可以选择添加新的联系人,输入姓名、电话号码和邮箱等信息后,系统将在通讯录中添加新的联系人。
b. 删除联系人模块用户可以根据输入的姓名或电话号码查找对应的联系人信息,并选择删除对应的联系人。
c. 查找联系人模块用户可以根据输入的姓名或电话号码查找对应的联系人信息,并在界面上显示查询结果。
d. 修改联系人模块用户可以根据输入的姓名或电话号码查找对应的联系人信息,并选择修改对应的联系人。
e. 显示所有联系人模块用户可以选择显示通讯录中所有的联系人信息,在界面上进行展示。
3. 系统框架设计本系统的整体框架如下:1. 主菜单显示2. 根据用户的选择,进入对应的功能模块四、系统流程图下图展示了通讯录管理系统的整体流程:主菜单 -> 用户选择功能模块 -> 执行对应模块功能五、代码实现以下为通讯录管理系统的部分核心代码实现,完整代码可参考附录部分。
通讯录管理系统c语言课程设计报告

通讯录管理系统c语言课程设计报告通讯录管理系统C语言课程设计报告1. 项目概述•本项目是一个通讯录管理系统,旨在提供用户管理通讯录的功能。
•使用C语言开发,具有良好的跨平台兼容性。
•主要功能包括添加联系人、查找联系人、编辑联系人、删除联系人等。
2. 项目背景•通讯录是现代社会必不可少的工具,用于管理个人和组织的联系人信息。
•传统的纸质通讯录已不能满足日益增长的信息管理需求。
•本项目旨在开发一款方便、高效的电子通讯录管理系统,满足人们对联系人信息管理的需求。
3. 技术实现•采用C语言作为开发语言,具有良好的跨平台兼容性和高效的执行速度。
•主要采用文件存储方式,将联系人信息保存在本地文件中。
•使用结构体来表示联系人信息,方便管理和操作。
4. 功能模块添加联系人•用户可以通过输入姓名、电话号码、电子邮件等信息,添加新的联系人。
•程序将自动生成一个唯一的联系人ID,并将联系人信息保存到文件中。
查找联系人•用户可以通过姓名、电话号码等条件进行查找联系人。
•程序将根据用户输入的条件,在通讯录中查找符合条件的联系人,并将结果返回给用户。
编辑联系人•用户可以选择要编辑的联系人,并进行修改联系人信息的操作。
•程序将根据用户输入的联系人ID,找到对应的联系人并允许用户修改其信息。
删除联系人•用户可以选择要删除的联系人,并进行删除操作。
•程序将根据用户输入的联系人ID,找到对应的联系人并从通讯录中删除。
5. 实施计划需求分析•确定系统所需的功能模块和用户需求,并进行详细的功能需求分析。
概要设计•设计系统的整体结构,包括模块划分、数据结构设计等。
详细设计•对每个模块进行具体的设计,包括函数接口定义、算法流程图等。
编码实现•根据详细设计的结果,使用C语言进行编码实现。
调试测试•对编码实现的程序进行测试和调试,修复可能出现的问题。
文档撰写•撰写项目的相关文档,包括使用说明、技术文档等。
6. 总结与展望•本项目成功开发了一个通讯录管理系统,具有简洁、高效的特点。
c语言课程设计学生通讯录管理系统

c语言课程设计学生通讯录管理系统以下是一个简单的C语言课程设计学生通讯录管理系统的示例代码,可以实现对学生信息的基本操作,如添加、查找、修改和删除。
```c#include <stdio.h>#include <string.h>// 学生信息结构体struct Student {char name[20];int age;char phone[11];};// 学生信息数组struct Student students[100];int count = 0; // 学生数量// 添加学生信息函数void addStudent() {struct Student s;printf("请输入学生姓名:");scanf("%s", );printf("请输入学生年龄:");scanf("%d", &s.age);printf("请输入学生电话:");scanf("%s", s.phone);students[count++] = s;printf("添加成功!\n");}// 查找学生信息函数void findStudent() {char name[20];printf("请输入要查找的学生姓名:");scanf("%s", name);for (int i = 0; i < count; i++) {if (strcmp(students[i].name, name) == 0) {printf("姓名:%s,年龄:%d,电话:%s\n", students[i].name, students[i].age, students[i].phone);return;}}printf("未找到该学生!\n");}// 修改学生信息函数void modifyStudent() {char name[20];printf("请输入要修改的学生姓名:");scanf("%s", name);for (int i = 0; i < count; i++) {if (strcmp(students[i].name, name) == 0) { printf("请输入新的学生姓名:");scanf("%s", students[i].name);printf("请输入新的学生年龄:");scanf("%d", &students[i].age);printf("请输入新的学生电话:");scanf("%s", students[i].phone);printf("修改成功!\n");return;}}printf("未找到该学生!\n");}// 删除学生信息函数void deleteStudent() {char name[20];printf("请输入要删除的学生姓名:");scanf("%s", name);for (int i = 0; i < count; i++) {if (strcmp(students[i].name, name) == 0) {for (int j = i; j < count - 1; j++) {students[j] = students[j + 1]; // 将后面的学生信息往前移动一位,覆盖掉要删除的学生信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于c语言的通讯录管理系统设计与实现 Document number【AA80KGB-AA98YT-AAT8CB-2A6UT-A18GG】《高级语言程序设计》——基于c语言的通讯录管理系统的设计与实现姓名:王炳旭学号: 1216F0610119指导老师:孟芸系别:信息工程系专业班级:计科F1201班《高级语言程序设计》课程设计任务书设计内容及要求:1.设计内容输入功能:记录信息并保存文件中。
显示功能:输出文件中所有信息。
查找功能:查询所需通讯信息。
删除功能:删除无用信息。
2.设计要求建立通讯录信息,信息包含姓名、性别、班级、电话,保存在文件中;能够输出文件中所有通讯录信息。
能够提供按姓名、班级或性别查询信息;能够提供按姓名删除通讯录信息的功能;时间安排:九月:选择自己所要设计的程序,查阅书籍、网上查询,收集所需资料解决疑惑。
十月:开始编写程序,不断分析。
十一月:代码实现,程序能够运行。
十二月:写报告,完成课程设计。
《高级语言程序设计》课程设计教师评阅成绩表《高级语言程序设计》课程设计承诺书目录1.引言----------------------------------------------------------------------- 21.1设计内容------------------------------------------------------------- 21.2设计任务及具体要求--------------------------------------------------- 21.3系统环境------------------------------------------------------------- 32.总体设计------------------------------------------------------------------- 32.1系统功能简介--------------------------------------------------------- 32.2总体程序框图--------------------------------------------------------- 32.3各个模块之间的主要关系----------------------------------------------- 43.详细设计------------------------------------------------------------------- 43.1各个模块的程序流程图及运行界面--------------------------------------- 43.2关键代码分析说明----------------------------------------------------- 83.3程序使用说明--------------------------------------------------------- 94.总结----------------------------------------------------------------------- 9致谢------------------------------------------------------------------------- 9参考文献--------------------------------------------------------------------- 9附录------------------------------------------------------------------------ 101.引言当今时代,计算机已经成为人们生活中不可或缺的一部分,它打破了地域时间限制,改变了人们的工作和生活方式。
通讯录系统能方便用户的需求,满足用户迅速、准确的查找修改或者删除联系人信息,把各个联系人信息以文档保存。
本文介绍了简易通讯录管理系统在VC++6.0环境下的实现过程:系统的分析,功能模块的设计,系统的流程图及运行界面。
此系统的主要管理的信息由:联系人的姓名、班级、性别、电话号码,加深对c++语言程序设计的理解,提高算法设计的能力,锻炼编程的能力。
用c++语言编程一个通讯录管理系统软件,要求能实现通讯录管理系统中的增加信息,删除信息,显示通讯里的所有信息,按名字查询信息,保存通讯录,退出系统。
1.1设计内容通讯录管理系统设计内容:输入功能:记录信息并保存文件中。
显示功能:输出文件中所有信息。
查找功能:查询所需通讯信息。
删除功能:删除无用信息。
1.2设计任务及具体要求1.设计任务:自学C语言中相关知识,设计出通讯录管理系统。
2.设计要求:建立通讯录信息,信息包含姓名、性别、班级、电话,保存在文件中;能够输出文件中所有通讯录信息。
能够提供按姓名、班级或性别查询信息;能够提供按姓名删除通讯录信息的功能;时间安排:九月:选择自己所要设计的程序,查阅书籍、网上查询,收集所需资料解决疑惑。
十月:开始编写程序,不断分析。
十一月:代码实现,程序能够运行。
十二月:写报告,完成课程设计。
1.3系统环境VC++6.02.总体设计2.1系统功能简介该通讯录管理系统分为以下四个功能:1.输入功能:可以添加通讯录记录,选择添加人数,依次输入姓名、班级、性别、电话号码后,提示信息保存成功,按任意键会返回主菜单。
2.显示功能:可以输出所有通讯录里的记录。
3.查找功能:可以选择姓名、班级、性别三种方式查询信息。
所输入信息不存在时,提示该信息不存在,返回主菜单。
4.删除功能:在显示的所有通讯录信息里,输入要删除通讯录信息的姓名,即删除成功。
5.退出:结束运行,退出程序。
2.2总体程序框图该通讯录系统共有四个功能模块。
打开程序之后,先进入主菜单,根据需求选择功能,分别有输入、显示、查找、删除。
输入功能可以添加通讯录记录,选择添加人数,依次输入姓名、班级、性别、电话号码。
显示功能可以输出所有通讯录里的记录。
查找功能可以选择姓名、班级、性别三种方式查询信息。
删除功能可以删除无用的信息。
图2-1 总流程图2.3各个模块之间的主要关系该系统用下面四个功能模块编写,每个模块执行不同的功能,体现了模块化设计的思想。
下面四个模块都是利用C语言文件,向文件中追加数据、读取、查询数据和删除数据。
输入:用fopen()建立一个文本文件,然后用fwrite()向其中输入数据,再用fclose()函数关闭并保存文件。
显示:通过循环依次输出文件中的数据,即输出所有通讯录里的信息。
查找:为了满足用户的实际需求,设计了三种查询方式,可以用姓名、性别、班级三种方式查找通讯录记录。
这里用到strcmp()函数,通过比较字符串是否相同来判别是否找到相关信息,找到后,就把文件中的数据赋给对应的变量,再把变量所带的值输出到屏幕上。
删除:输入你要删除的人的姓名后,系统会自动删除文件中的记录。
3.详细设计3.1各个模块的程序流程图及运行界面1.输入模块在主菜单选择1,进入输入界面,按显示输入记录人数和信息,信息有姓名、班级、性别、电话号码,数据可以自动从内存保存到文件中。
如图 3.1-2。
显示信息保存成功后,输入任意键返回主菜单。
图3-1 输入流程图图3-2 输入运行界面2.显示模块用户进入显示功能,显示功能利用循环显示文件中所有信息,所有信息显示成功后,会提示所有信息显示成功,若文件中没有信息,显示信息不存在,输入任意键可以返回主菜单。
如图3-3。
图3-3 显示流程图图3.1-4 显示运行界面3.查找模块进入查找界面,选择要查找信息的方式,有姓名、班级、姓名。
输入条件,用strcmp()函数通过比较字符串是否相同来判别是否找到相关信息,找到则显示此所有信息,未找到显示“该信息不存在”。
如下图3-5。
输入任意键可以返回主菜单。
图3-5 查找流程图根据班级查找信息:图3-6根据性别查找信息:图3-7根据姓名查找信息:图3-84.删除模块在主菜单选择4,进入删除功能,根据自动显示的文件中的所有信息,输入要删除信息的姓名,就可以在文件中永久删除此信息,若删除成功显示删除信息成功。
如下图3-9。
图3-9 删除流程图图3-10 删除运行界面3.2关键代码分析说明1.结构体的创建:结构体(structure)是一个或多个相同数据类型或不同数据类型的变量集合在一个名字下的用户自定义说明。
为了增强程序的可读性,使程序更简洁,c程序员经常用typedef为结构体类型定义一个更简单、直观、有意义和可读性更好的别名。
typedef struct address{char name[20];/* 姓名 */char clas[20];/*班级 */char sex[10];/* 性别 */char tel[20]; /* 电话号码 */}ADDRESS;/*结构体*/ADDRESS adr[N],temp[N];起初我创建结构体是typedef struct address{}ADDRESS adr[N];这是错误的,没有真正明白结构体的知识。
通过我上网查询,除了上边的一种方法,还可以struct address{};typedef struct address ADDRESS;ADDRESS adr[N];typedef是把结构名重命,换成一个简单的。
2.文件打开文件if((fp=fopen("f:\\通讯录.txt","r"))==NULL){printf("打开文件失败!请按任意键返回主菜单!\n");scanf("%s",&q);system("cls");main();}读取文件while(!feof(fp)){fread(&temp[m],sizeof(ADDRESS),1,fp);m++;}关闭文件fclose(fp);这是一个重要的知识点,也是我最弱的一点,我通过询问我的指导老师学会并掌握。
我们要把信息从内存保存到文件中,再从文件中把信息读取到内存,只有在内存中才可以修改信息。
fp=fopen("f:\\通讯录.txt","a");文件名字和文件地点可以自己设置。
a是添加的意思,不清除文件中本有的信息,w则是重写文件中的信息。
3.3程序使用说明随着网络与信息技术的发展,人们的联系人越来越多,需要联系的人逐渐增多,需要记录的信息也逐渐增多。
以前是将这些信息手写到通讯录中,这很容易造成信息的丢失,而且查找起来很不方便。