- 3
- 0
- 约1.72万字
- 约 30页
- 2018-08-22 发布于贵州
- 举报
终极程序设计报告
程序设计综合训练报告
PAGE \* MERGEFORMAT
PAGE \* MERGEFORMAT 1
《程序设计综合训练》
设 计 报 告
专 业: 数字媒体技术
班 级:
学 号:
姓 名:
指导教师:
成 绩:
计算机工程学院
2012年3月
PAGE \* MERGEFORMAT
PAGE \* MERGEFORMAT 1
目 录
第二部分
题目名称、内容。
解题的基本思路,
设计方案,功能模块框图与程序流程图等。
算法设计:算法描述、实现方法、详细流程图等。
程序调试:调试过程与步骤,发现的问题,解决的办法等。
测试:运行程序,输入测试数据,判断是否达到预期目的。测试数据要有典型意义,要注意临界值的选取,注意测试数据的广泛性和普适性。
总结:收获与体会,有实际内容,忌空洞无物,忌千篇一律,400字左右。
附录:源代码(含注释)。
第二部分
(1)题目名称:职工信息管理系统
内容:职工信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等(职工号不重复)。试设计一职工信息管理系统,使之能提供以下功能:
1、职工信息录入功能(职工信息用文件保存,也可不用)
2、职工信息浏览功能
3、排序:按学历排序
4、查询或排序功能:(至少一种查询方式:顺序、折半查找)
按学历查询
职工信息删除、修改功能(任选一项)
(2)解题的基本思路
使用结构体、单链表、文件等方面的知识。对于职工的信息可直接读取文件或通过键盘录入,通过调用各种自定义函数实现查询,删除,排序,输出等功能。
(3)设计方案
职工信息管理系统主要利用单链表实现,它由四大功能模块组成。
①输入记录模块。输入记录模块主要完成将数据存入单链表中的工作。在此职工信息管理系统中,记可以从以二进制形式存储的数据文件中读入,也可以从键盘逐个输入职工记录。职工信息由职工基本信息和职业信息字段构成。当从数据文件读入记录时,它就是在以记录为单位存储的数据文件中,将记录逐条复制到单链表中。
②查询记录模块
查询记录模块主要完成单链表中查找满足相关条件的职工记录。在此职工信息管理系统中,用户可以按照职工的学历在单链表中进行查找。若找到该职工的记录,它则返回指向该职工记录的指针。否则,它返回一个值为NULL的空指针,并打印出未找到该职工记录的提示信息。
③更新记录模块。更新记录模块主要完成对职工记录的维护。在此职工信息管理系统中,它实现了对职工记录的删除和排序操作。一般而言,系统进行了这些操作之后,需要将修改的数据存入源数据文件。
④给出记录模块。输出记录模块主要完成了两个任务。第一,它实现了对职工记录的存盘操作,即将单链表中的各节点中存储的职工记录信息写入数据文件中。第二,它实现了将单链表中存储的职工记录信息以表格的形式在屏幕上打印出来。
图1 职工信息管理系统功能模块图
(4)算法设计
主控main()函数执行流程
本职工信息管理系统执行主流程如图2所示。他先以可读写的方式打开数据文件,此文件默认路径为:D:\worker,若该文件不存在,则新建此文件。当打开文件操作成功后,它则从文件中一次读出一条记录,写入添加到新建的单链表中,然后执行显示主菜单和进入主循环操作,进行按键判断。
图2 主控main()函数执行流程图
在判断键值是,有效的输入为0~6之间的任意数值,其他输入都被视为错误按键。若输入为0(即变量select=0),它会继续判断在对记录进行了更新操作之后是否进行了存盘操作,若未存盘,则全局变量saveflag=1,系统会提示用户是否需进行数据存盘操作,用户输入Y或y,系统会进行存盘操作。最后,系统执行退出信息管理系统的操作。
若选择1,它则调用Add()函数,执行增加学生记录操作;若选择2,它则调用Disp()函数,执行将职工记录以表格形式打印输出至屏幕的操作,也是信息浏览功能;若选择3,它则调用Sort()函数,执行按降序进行排序职工记录的操作;若选择4,它则调用Qur()函数,执行查询职工记录操作;若选择5,它则调用Del()函数,执行删除职工记录操作;若选择6;它则调用Save()函数,执行将职工记录存入磁盘中的数据文件的操作;若输入为0~6之外的值,它则调用Wrong()函数,给出按键错误的提示。
2.输入记录模块
输入记录模块主要实现将数据存入单链表中。当从数据文件中读出记录时,它调用了fread(p,sizeof(Node),1,fp)文件读取函数,执行一次从文件中读取一条职工信息记录信息存入指针变量p所指向的节点中的操作,并且这操作在main()中执行,即当职工信息管理系统进入显示菜单界面时,
原创力文档

文档评论(0)