C语言通讯录管理系统程序代码

上传人:枫** 文档编号:455485694 上传时间:2023-09-26 格式:DOCX 页数:16 大小:41.15KB
返回 下载 相关 举报
C语言通讯录管理系统程序代码_第1页
第1页 / 共16页
C语言通讯录管理系统程序代码_第2页
第2页 / 共16页
C语言通讯录管理系统程序代码_第3页
第3页 / 共16页
C语言通讯录管理系统程序代码_第4页
第4页 / 共16页
C语言通讯录管理系统程序代码_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《C语言通讯录管理系统程序代码》由会员分享,可在线阅读,更多相关《C语言通讯录管理系统程序代码(16页珍藏版)》请在金锄头文库上搜索。

1、C语言通讯录管理系统程序代码-计科1001 赖祥燃 一、 课程设计题目及要求 题目 通讯录管理系统 任务:自学C语言中相关知识,设计出通讯录管理系统。要求如下所述: u 建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子邮箱等; u 能够提供添加、删除和修改通讯录信息的功能; u 能够提供按姓名或电话等查询; u 将通讯录保存在文件中; u 能够按表格方式输出通讯录信息。 二、系统设计方案 总体框架图: 通讯录管理系统:1、录入通讯录信息 2、修改通讯录信息 3、查询通讯录信息 4、浏览通讯录信息 5、增加通讯录信息 6、推出系通讯录统 模块设计 模块一:头文件,变量定义,函数

2、的声明 对系统所使用的变量进行定义,对函数进行声明 模块二:录入通讯录信息 声明函数void readfile,说明一个文件指针FILE *fp 打开文件student.txt 模块三:通讯录信息的查找 声明void seek为查找函数,通过switch(item)设定用学号查找,用姓名查找两个分支 模块四:通讯录信息的修改 第 1 页 -计科1001 赖祥燃 声明void modify为学生信息修改函数,通过switch(item)设定所要修改的项目 模块五:通讯录信息按学号排序 声明void sort将录入通讯录信息系按升序排列,用的是“冒泡排序法”实现排序 模块六:加通讯录信息 声明vo

3、id insert插入通讯录信息,先通过判断通讯录是否存在,若否则继续输入,若是跳出,重新循环 模块七:通讯录信息 声明void del实现通讯录信息删除,通过学号对比确定要删除的信息,然后用后一个替换掉。 模块八:示学生信息 通过display函数输出通讯录信息 模块九;存信息 通过fp=fopen(student.txt,w);写入信息 模块十:界面菜单 通过switch(num)调用,以上各函数,实现功能 三、设计详情 1. 主函数 主函数设计要求简洁,只提供部分提示语和函数的调用 开始 显示一系列功能选项 N 输入n,判断n是否是18 ? 根据n的值调用各功能模块函数 结束 第 2 页

4、 -计科1001 赖祥燃 图1. 主函数流程图 void menu/* 界面 */ int num; printf( nn 自动化0901通讯录管理系统 nn); printf( * nn); printf( * 制作人:翁行兴 * n n); printf( * nn); printf(*系统功能菜单* printf( - - n); printf( * 1.刷新学生信息 * * 2.查询学生信息 * n); printf( * 3.修改学生信息 * * 4.增加学生信息 * n); printf( * 5.按学号删除信息 * * 6.显示当前信息 * n); printf( * 7.保存当

5、前学生信息 * * 8.退出系统 * n); printf( - - printf(请选择菜单编号:); scanf(%d,&num); switch(num) case 1:readfile;break; case 2:seek;break; case 3:modify;break; case 4:insert;break; case 5:del;break; case 6:display;break; case 7:save;break; case 8:k=0;break; default:printf(请在1-8之间选择n); 第 3 页 n); n); -计科1001 赖祥燃 四、源代

6、码 #include #include #include #define BUFLEN 100 #define LEN 15 #define N 100 struct record /*结构体*/ char codeLEN+1; /* 学号 */ char nameLEN+1; /* 姓名 */ int age; /* 年龄 */ char sex3; /* 性别 */ char timeLEN+1; /* 出生年月 */ char add30; /* 家庭地址 */ char telLEN+1; /* 电话号码 */ char mail30; /* 电子邮件地址 */ stuN; int k

7、=1,n,m; /* 定义全局变量 */ void readfile;/* 函数声明 */ void seek; void modify; void insert; void del; void display; void save; void menu; int main 第 4 页 -计科1001 赖祥燃 while(k) menu; system(pause); return 0; void readfile/* 建立信息 */ char *p=student.txt; FILE *fp; int i=0; if (fp=fopen(student.txt,r)=NULL) printf

8、(Open file %s error! Strike any key to exit!,p); system(pause); exit(0); while(fscanf(fp,%s %s%d%s %s %s %s %s,stui.code,stui.name,&stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail)=8) i+; i=i; fclose(fp); n=i; printf(录入完毕!n); void seek /*查找*/ int i,item,flag; char s121; /* 以姓名和学号最长长度+1为准 */

9、 printf(-n); 第 5 页 -计科1001 赖祥燃 printf(-1.按学号查询-n); printf(-2.按姓名查询-n); printf(-3.退出本菜单-n); printf(-n); while(1) printf(请选择子菜单编号:); scanf(%d,&item); flag=0; switch(item) case 1: printf(请输入要查询的学生的学号:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.code,s1)=0) flag=1; printf(学号 姓名 年龄 性别 出生年月 地址 电话 E-mailn); printf(-n); printf(%6s %7s %6d %5s %9s %8s %10s %14sn,stui.code,stui.name,stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail); if(flag=0) printf(该学号不存在!n); break; case 2: printf(请输入要查询的学生的姓名:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.name,s1)=0) 第 6 页 -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号