C语言课程设计---通讯录管理系统

  • 格式:doc
  • 大小:521.00 KB
  • 文档页数:28

下载文档原格式

  / 28
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中国地质大学本科生课程论文封面

课程名称C语言程序设计

教师姓名

本科生姓名

本科生学号

本科生专业

所在院系

类别:

日期:

课程设计评语

注:1、无评阅人签名成绩无效;

2、必须用钢笔或圆珠笔批阅,用铅笔阅卷无效;

3、如有平时成绩,必须在上面评分表中标出,并计算入总成绩。

目录

课程设计评语 (2)

目录 (3)

1.课程论文题目 (4)

2.程序设计思路 (4)

3.功能模块图 (5)

4.数据结构设计 (5)

5.算法设计 (5)

6.程序代码 (14)

7.程序运行结果 (14)

8.编程中遇到的困难及解决方法 (27)

9.总结心得及良好建议 (28)

10.致谢 (28)

1.课程论文题目

通讯录管理系统

要求:设计具有数据插入、修改、删除、显示和查询功能的电话簿管理系统。

⑴数据包括:人名、工作单位、电话号码和E-mail地址。

⑵可对记录中的姓名和电话号码进行修改。

⑶可增加或删除记录。

⑷可显示所有保存的记录。

⑸可按人名或电话号码进行查询。

2.程序设计思路

根据题目的要求,程序应该采用结构体数组和文件系统实现。应该有动态的存储空间和文件输入、输出等操作功能;在程序中应该包括添加、显示、删除、查询和修改以及保存和退出的功能;另外还应提供键盘式选择菜单实现功能选择。

3.功能模块图

4.数据结构设计

整个程序中用到的数据主要是全局变量MAX 100和字符变量name[10]、addr[20]、phnum[20]、email[20]。

5.算法设计

1.主函数

主函数的设计一般比较的简单,只提供输入,功能处理和输出部分的函数调用。其中个功能模块用菜单方式选择。菜单部分也可以写成函数。

[流程图]

[程序]

main() /*****************主函数*****************/

{int n; /**********变量保存选择菜单数子***************/

creat();

do

{printf("\n\t***********************************************\n");

printf("\n\n\t*************WELCOME TO USE!***************\n");

printf("\n\t**********************************************\n");

printf("\n\n\t\t*****Please make a choice below*****\n");

printf("\n\t\t1.Add a piece of meg");

printf("\n\t\t2.List all the meg");

printf("\n\t\t3.Delete a piece of meg");

printf("\n\t\t4.Find a piece of meg");

printf("\n\t\t5.Alter a piece of meg");

printf("\n\t\t6.Save and Quit");

printf("\n\t\t7.Create an address book");

printf("\n\n\n");

printf("\t********Input Your Choice:****************\n");

scanf("%d",&n);

switch(n) /*****************输入n的在1-6之间执行switch ************/

{ case 1: Add(); /*添加模块*/

break;

case 2: List(); /*显示模块*/

break;

case 3: Delete(); /*删除模块*/

break;

case 4: Find(); /*查询模块:分为名字查询(0)和电话号码查询(1)*/

break;

case 5: Alter(); /*修改模块:分为修改名字(0)和修改电话号码(1)*/

break;

case 6: exit(0); /*退出模块*/

break;

case 7: creat(); /*带回链表起始地址*/

fclose(fp);

default: /**********输入的n不在1-6之间执行default ************/ printf("\n\t********************************************\n");

printf("\n\t The num should be 1-6!!! \n");

printf("\n\t********************************************\n");

break;

}

}while(1);

}

2.各功能模块设计

[数据结构]

通讯录的数据信息:人名、工作单位、电话号码、E-mail地址均可以采用字