[C语言课程设计实验报告模板

《程序设计基础》

课程设计报告

课程设计题目

通讯录管理系统

指导教师:____李 萍____

班 级:__ 0903班_ _ __

学生姓名:2009100333_ 闫 晓

2009100334 皇 倩

2009100335 翟少平

2009100336 谢成龙

2009100337 姚 琳

完成日期: 2010年9月16日

运城学院计算机科学与技术系

目录

一、课程设计目的3

二、课程设计内容3

三、总体设计4

四、详细设计4

五、调试与测试11

《C语言课程设计》

通讯录管理系统

一、课程设计目的

通过课程设计,加深对结构化设计思想的理解,能对系统功能进行分析,并设计合理的模块化结构。

通过课程设计,学会设计数据结构。其中包括对结构数组、链表和数据文件等知识的运用。

通过课程设计,提高程序开发功能,能运用合理的控制流程编写清晰高效的程序。

通过课程设计,训练C程序调试能力,能将一个中小型各级组织系统联调通过。

通过课程设计,开发一个中小型系统,掌握系统研发全过程。

通话课程设计,培养分析问题、解决实际问题的能力。

二、课程设计内容

设计一个实用的学生通讯录管理系统,能以简便高效的方式对通讯录进行管理和检索,具体要示:

录入:学生通讯录信息包括:姓名,地址,电话等。以结构数组 或数据文件的形式存放通讯录信息。

更新:能插入、删除通讯录信息。

浏览:按姓名为序进行通讯录信息浏览。

查询:能实现指定联系人信息查询或指定课题组人员查询功能。

系统以菜单方式工作,要求界面友好,易于操作。

三、总体设计

模块化设计

为实现系统功能,本程序主要分为六个模块。它们分别为:输入一个学生信息、删除一个学生信息、查询一个学生信息、插入一个学生信息、输出所有的学生信息、保存并且退出该程序。这六个函数再通过主函数调用分别得以实现。

主函数,首先提供了程序运行时的友好界面,列出了清单,提供用户做出选择,以便决定使用通讯录的哪种功能。然后,通过执行多分支选择语句——switch语句,分别实现其它各个函数的调用功能。

其它各个函数的功能分别如下:

creat函数用于对通讯录中的数据以文件的方式

进行读入及函数用于录入通讯录中学生的信息;

delete函数用于对通讯录中指定信息的删除;

search函数用于对通讯录中指定信息的查询;

append函数用于在通讯录中插入信息;

output函数用于对通讯录中所有信息进行浏览;

exit函数用于保存通讯录信息并且退出。

四、详细设计

(1)数据结构设计

本程序中,运用了多种数据结构。首先对于学生通讯录中各项详细信息的记录用了结构数组的形式,然后又运用链表动态地分配内存单元,在creat函数中,把保存在数组中的值再赋值给其中的一个结点,通过指针的后移,把多个数据连成一个链,形成一个链表。在这过程当中,还运用了数据文件的方式,每一次从终端输入的数据都以数据文件的形式保存到了磁盘。

对于主要数据结构的举例如下:

结构数组:

struct person

{ char name[10];

char addr[30];

char tel[15];

};

(2)模块接口设计

由于本程序中存在很多指针,所以这个程序中被调用的函数都是空类型的,但这并没有影响最终结果的输出,反而使得函数调用的过程更加简便。

本程序执行的入口是main函数,然后在main函数中首先调用了creat函数,这就实现了对通讯录中的数据以文件的方式进行读入。接下来在while语句中再套用switch语句实现对各个函数的调用。最后,再从main函数中结束整个程序的运行。

其中涉及到被调用的函数有:

void creat33();

void output34();

void search34();

void append36();

void modify35();

void delete37();

(3)流程图

creat函数:

void creat33()

{

struct person one;

long s1;

printf("\n请输入通讯簿名:");

scanf("%s",filename);

if((fp=fopen(filename,"w"))==NULL)

{

printf("\n不能建立通讯簿!");

exit();

}

fprintf(fp,"%-20s%-30s%-50s\n","姓名","电话号码"

c语言课程设计实验报告模板,[C语言课程设计实验报告模板.doc相关推荐

  1. 大一c语言课程报告报书模板,C语言课程设计实验报模板.doc

    C语言课程设计实验报模板 <程序设计基础> 课程设计报告 课程设计题目 通讯录管理系统 指导教师:____李 萍____ 班 级:__ 0903班_ _ __ 学生姓名:200910033 ...

  2. c语言课程设计大作业模版,c语言课程设计报告模板下载

    c语言课程设计报告模板是一款专业的设计模板,对于在大学有需要些设计报告的朋友,可以下载这款模板作为参考,了解设计报告的需求,基本上毕业的论文设计也是在这个基础上严格要求的,欢迎下载使用. C语言介绍 ...

  3. c语言综合程序设计省市邮政编码,《C语言程序设计课程设计报告》_课程教学大纲...

    <<C语言程序设计课程设计报告>_课程教学大纲>由会员分享,可在线阅读,更多相关<<C语言程序设计课程设计报告>_课程教学大纲(6页珍藏版)>请在人人文 ...

  4. c语言射击类小游戏任务书,(c语言课程设计报告小游戏“石头剪子布”.doc

    (c语言课程设计报告小游戏"石头剪子布" <C语言课程设计>报告 题目:石头剪子布 班级: 学号: 姓名: 指导教师: 成绩: 目 录: 一.选题背景- 3 - 二.设 ...

  5. c语言程序设计综合性设计实验报告,《C语言程序设计》-综合性实验实验报告(参考格式...

    <<C语言程序设计>-综合性实验实验报告(参考格式>由会员分享,可在线阅读,更多相关<<C语言程序设计>-综合性实验实验报告(参考格式(9页珍藏版)>请 ...

  6. c语言编程模拟机械钟表行走,C语言课程设计报告-模拟时钟转动程序

    1. 课程设计报告题 目 课 程 名 称 结构化程序设计课程设计 院 部 名 称 专 业 班 级 学 生 姓 名 王蕾 学 号 课程设计地点 课程设计学时 指 导 教 师 金陵科技学院教务处制 程序设 ...

  7. 第四次c语言实验报告模板,C语言实验报告模板.doc

    C语言实验报告模板.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文档所得 ...

  8. c语言航班管理系统报告,c航班管理系统课程设计报告.doc

    c航班管理系统课程设计报告 北华航天工业学院课程设计报告 PAGE 课程设计报告 报告(论文)题目: 1航班信息查询系统 2迷宫问题 作者所在系部: 计算机科学与工程系 作者所在专业: 计算机科学与技 ...

  9. 数据结构c语言程序设计报告,数据结构与算法课程设计报告模版.doc

    数据结构与算法课程设计报告模版.doc 数据结构与算法课程设计报告题 目本科生导师制问题与家族关系查询系统院 (系) 信息科学与工程 专业班级 计算机应用技术1301班 学生姓名 顾 泉 学 号 20 ...

最新文章

  1. torch量化感知训练示例项目
  2. SQL高级查询(层次化查询,递归)
  3. Upgrading PHP on CentOS 6.5 (Final)
  4. 项目经理如何参与任务管理
  5. PAT甲级1048 Find Coins :[C++题解]哈希表、两个硬币之和为定值
  6. 为什么 Kubernetes 变得如此流行(2020版)
  7. 20.毛玻璃效果blur
  8. java中的printnb_javaI/O系统笔记
  9. 谷歌正在移除 Chrome 的“关闭其他选项卡”选项
  10. 高精度双目立体视觉测量
  11. 遥感数据免费获取网址
  12. jsp高校科研项目管理系统
  13. hough变换检测直线 matlab,Hough变换直线检测MatLab代码 | 学步园
  14. 合并两个有序数组——C语言
  15. win10 cmd中文显示乱码
  16. 【TcaplusDB知识库】读取数据示例(TDR表)
  17. FOP(PDF与JAVA)
  18. Ubuntu、ROS、PX4常见问题及其解决办法
  19. Gameplay Ability System - UE4
  20. 由“人肉搜索”到“人肉防火墙”想到的。。。

热门文章

  1. 印度富士康的iPhone产能在扩产,对中国制造将产生深远影响
  2. codeforces 400D - Dima and Bacteria
  3. 植物大战僵尸2付费分析
  4. 键盘输入时只按了一次,却出现好几个字母(Fn+F10关闭加速)
  5. Agilent RF fundamentals (8) Oscillator Decisions
  6. java 生成对称密钥_Java中创建对称密钥的代码
  7. RTSP/ONVIF协议视频平台EasyNVR级联时上级平台播放视频卡顿的原因排查分析
  8. 【大咖有约】华为叶涛:数据库事务处理的原理与实例剖析
  9. dancer cookbook 小议3
  10. php 对接微信分遇到的坑,wechatpay-api-v3签名,持续更新(统一下单接口,如第一次申请商户apikey,请重置,否则会报签名错误)