c语言课程设计报告通讯录管理系统

上传人:m**** 文档编号:457735118 上传时间:2023-09-20 格式:DOCX 页数:11 大小:39.56KB
返回 下载 相关 举报
c语言课程设计报告通讯录管理系统_第1页
第1页 / 共11页
c语言课程设计报告通讯录管理系统_第2页
第2页 / 共11页
c语言课程设计报告通讯录管理系统_第3页
第3页 / 共11页
c语言课程设计报告通讯录管理系统_第4页
第4页 / 共11页
c语言课程设计报告通讯录管理系统_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《c语言课程设计报告通讯录管理系统》由会员分享,可在线阅读,更多相关《c语言课程设计报告通讯录管理系统(11页珍藏版)》请在金锄头文库上搜索。

1、c语言课程设计报告通讯录管理系统武汉科技大学 信息科学与工程学院 C语言通讯录管理系统课程设计报告 1设计题目的内容、任务及具体要求 一需求分析 实现通讯录管理系统 任务:自学C语言有关链表及外部文件的内容,设计出通讯录管理系统,要求如下: 建立通讯录信息,信息至少包含编号,姓名,年龄,电话,通讯录地址,电子邮箱等; 能够提供添加,删除和修改通讯录信息的功能; 能够提供按不同方式查询的功能;如按姓名或年龄,电话等查询; 将通讯录保存在文件中; 能够按表格方式输出通讯录信息 要求: 1.学生从以上几个设计任务中任选其中一个完成. 2根据以上功能需求,自己定义单链表结点的存储结构; 3.为了保证所

2、有的数据可以长期被使用,要求程序能将相关数据存储在外部数据文件中,具体数据格式和文件名,路径等自定; 4.提供友好的用户界面,方便用户操作. 二.源程序代码 #include #include #include 1 武汉科技大学 信息科学与工程学院 C语言通讯录管理系统课程设计报告 #define BUFLEN 80 /* 缓冲区最大字符数 */ #define LEN 30 /* 学号和姓名最大字符数,实际请更改 */ #define N 200 /* 最大学生人数,实际请更改*/ struct record char codeLEN+1; /* 学号 */ char nameLEN+1;

3、/* 姓名 */ int age; char sex3; char timeLEN+1; char addLEN+1; char telLEN+1; char mailLEN+1; stuN; int k=1,n,m; void readfile;/* 函数声明 */ void seek; void modify; void insert; void del; void display; void save; void menu; int main while(k) menu; system(pause); return 0; void readfile/* 建立信息 */ char bufB

4、UFLEN,*p=student.dat; FILE *fp; int i=0; if (fp=fopen(student.dat,r)=NULL) /* 把此程序和文件student.dat放在同一目录下 */ printf(Open file %s error! Strike any key to exit!,p); system(pause); exit(0); 2 武汉科技大学 信息科学与工程学院 C语言通讯录管理系统课程设计报告 while(fscanf(fp,%s %s%d%s %s %s %s %s,stui.code,stui.name,&stui.age, stui.sex,

5、stui.time,stui.add,stui.tel,stui.mail)=8) i+; fclose(fp); n=i; printf(录入完毕!n); void seek int i,j,item,flag; char s1LEN+1; /* 以姓名和学号最长长度+1为准 */ printf(-n); printf(1.按学号查询n); printf(2.按姓名查询n); printf(3.退出本菜单n); printf(-n); while(1) printf(请选择子菜单编号:); scanf(%d,&item); flag=0; switch(item) case 1: print

6、f(请输入要查询的学生的学号:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.code,s1)=0) flag=1; printf(该学生学号,姓名,年龄,性别,出生年月,地址,电话,E-mail 分别为:n); printf(%s %s %d %s %s %s %s %sn,stui.code,stui.name,stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail); if(flag=0) printf(该学号不存在!n); break; case 2: 3 武汉科技大学 信息科学与

7、工程学院 C语言通讯录管理系统课程设计报告 printf(请输入要查询的学生的姓名:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.name,s1)=0) flag=1; printf(该学生学号,姓名,年龄,性别,出生年月,地址,电话,E-mail 分别为:n); printf(%s %s %d %s %s %s %s %sn,stui.code,stui.name,stui.age, stui.sex,stui.time,stui.add,stui.tel,stui.mail); if(flag=0) printf(该姓名不存在!n); br

8、eak; case 3:return; default:printf(请在1-3之间选择n); void modify /*修改信息*/ int i,j,item,num; char sex13,s1LEN+1,s2LEN+1; /* 以姓名和学号最长长度+1为准 */ printf(请输入要要修改的学生的学号:n); scanf(%s,s1); for(i=0;in;i+) if(strcmp(stui.code,s1)=0) num=i; printf(-n); printf(1.修改姓名n); printf(2.修改年龄n); printf(3.修改性别n); printf(4.修改出生

9、年月n); printf(5.修改地址n); printf(6.修改电话号码n); printf(7.修改E-mail地址n); printf(8.退出本菜单n); printf(-n); while(1) printf(请选择子菜单编号:); scanf(%d,&item); switch(item) 4 武汉科技大学 信息科学与工程学院 C语言通讯录管理系统课程设计报告 case 1: printf(请输入新的姓名:n); scanf(%s,s2); strcpy(stunum.name,s2); break; case 2: printf(请输入新的年龄:n); scanf(%d,&st

10、unum.age);break; case 3: printf(请输入新的性别:n); scanf(%s,sex1); strcpy(stunum.sex,sex1); break; case 4: printf(请输入新的出生年月:n); scanf(%s,s2); strcpy(stunum.time,s2); break; case 5: printf(请输入新的地址:n); scanf(%s,s2); strcpy(stunum.add,s2); break; case 6: printf(请输入新的电话号码:n); scanf(%s,s2); strcpy(stunum.tel,s2

11、); break; case 7: printf(请输入新的E-mail地址:n); scanf(%s,s2); strcpy(stunum.mail,s2); break; case 8:return; default:printf(请在1-8之间选择n); void insert int i=n,j,flag; printf(请输入待增加的学生数:n); scanf(%d,&m); do flag=1; while(flag) flag=0; printf(请输入第 %d 个学生的学号:n,i+1); scanf(%s,stui.code); 5 武汉科技大学 信息科学与工程学院 C语言通讯录管理系统课程设计报告 for(j=0;ji;j+) if(strcmp(stui.code,stuj.code)=0) printf(已有该学号,请检查后重新录入!n); flag=1; break; /*如有重复立即退出该层循环,提高判断速度*/ printf(请输入第

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

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

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