C语言课程设计       ——  职工信息管理系统

网友投稿 1120 2022-05-29

内蒙古科技大学

本科生课程设计说明书

题    目:C语言课程设计

——  职工信息管理系统

学生姓名:

学    号:

专    业:计算机科学与技术

班    级:一班

指导教师:胡伟健

日    期: 2020年12月29日

内蒙古科技大学课程设计任务书

课程名称

C语言课程设计

设计题目

职工信息管理系统

指导教师

胡伟健

时间

2020.12.29

目    录

内蒙古科技大学课程设计任务书

第一章

需求分析

1.1

引言

1.2

任务概述

1.3

数据描述

3

1.4

功能需求

4

1.5

性能需求

4

1.6

运行需求

1.7

任务计划

5

第二章

概要设计

2.1

总体设计

2.2

数据类型设计(或数据结构设计)

2.3

接口设计

//

函数声明

C语言课程设计       ——  职工信息管理系统

7

2.4

运行界面设计

7

第三章

详细设计

8

3.1

输入模块设计

8

3.2

输出模块设计

9

3.3

修改

模块设计

1

2

3.4

排序模块设计

1

2

3.5

保存及读取模块设计

1

4

第四章

测试分析

1

4

4.1

测试程序执行情况

1

7

4.2

出现的问题和解决的方法

1

8

第五章

用户手册(可选)

1

9

5.1

使用说明

2

0

5.2

运行说明

2

0

第六章

课程设计总结

2

1

附录:程序代码

2

2

参考文献

3

1

致谢

3

1

第一章  需求分析

1.1 引言

本文用C语言在编译器上架构一个职工管理系统系统,本文从理论和实践上来设计和使用职工管理。并对功能进行了详细的总结,以实现功能更全面。而后对系统的显示页面,函数的设计进行了较为详细的讲解。

1.2 任务概述

职工信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等(职工号不重复)。试设计一职工信息管理系统,使之能提供以下功能:

职工信息录入功能(职工信息用文件保存)--输入

职工信息浏览功能 --输出

查询或排序功能:(至少一种查询方式)  --算法

按工资查询    ●按学历查询等

职工信息删除、修改功能(任选项)

1.3 数据描述

职工管理系统用下面五个功能模块编写,每个模块执行不同的功能,体现了模块化设计的思想。下面五个模块都是利用C语言文件,向文件中追加数据、修改数据、查询数据和删除数据。

输入:可以输入职工信息,按顺序输入 职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等(职工号不重复)。

输出:也是用通过循环依次输出数据,即输出所有职工信息记录。

删除:输入你要删除职工信息后,系统会自动删除他/她的职工信息。

查找:为了满足用户的实际需求,设计了两种查询方式可以用工号、学历两种方式查找职工信息记录。通过比较字符串是否相同来判别是否找到相关信息,找到后就把文件中的数据赋给对应的变量,再把变量所带的值输出到屏幕上。

1.4 功能需求

1)   输入功能:可以多次完成多个职工所有信息。

2)   浏览功能:可以一次性浏览职工的所有信息。

3)   查询功能:可以按职工工号和学历两种方式查询。

4)   删除功能:可以对职工的信息进行删除。

5)   排序功能:可以按职工号进行降序排序。

6)   退出本系统

1.5 性能需求

1)   硬件环境

处理器:Inter CORE I5或是更高。

内存:128MB。

硬盘空间:20MB。

2)   软件环境

操作系统:Windows 7/ 8或是Windows 10

1.6 运行需求

1)   运行环境

运行环境:CodeBlocks/Visual C++6.0

1.7 任务计划

第二章 概要设计

2.1 总体设计

(1)系统以菜单方式工作

(2)职工信息录入功能(职工信息用文件保存)--输入

(3)职工信息浏览功能--输出

(4)职工信息查询功能--算法

查询方式:按学历查询/按工资查询

(5)职工信息删除、修改功能

2.2 数据类型设计(或数据结构设计)

2.2.1.添加信息模块: void A( Node *worker )

采用尾插法,先建立链表和头结点,新增加一个节点,输入职工的所有信息,将新增的节点连接在链表的尾端。

2.2.2.修改信息模块:void B( Node *worker )

找到要修改的职工信息,删除这一个节点,然后新建一个节点,输入要修改的信息,并储存到新的节点中,将新增的节点放在原来删除节点的位置。

2.2.3.显示输出模块:void C( Node *worker )

先新建一个指针指向头结点,判断指针域是否为空,若为空,输出“没有信息可以显示”;若不为空,则输出他的指针域所指向的节点储存的信息,并将指针向后移一个节点,直到P指向空,这样就输出了所有的职工信息。

2.2.4.查找信息模块:void D( Node *worker )

分为两种查找方法,按职工号查找和按姓名查找。

按职工号查找: 输入职工号,先新建一个指针指向头结点,判断指针域是否为空,若为空,输出“没有资料可以查询”;若不为空,则判断他的指针域所指向的节点储存的职工号是否与输入的职工号相同,若相同,则输出该职工所有的信息,并将指针向后移一个节点,再次进行判断,直到P指向空,这样就查找输出了所有匹配的职工信息。

按姓名查找:输入姓名,先新建一个指针指向头结点,判断指针域是否为空,若为空,输出“没有资料可以查询”;若不为空,则判断他的指针域所指向的节点储存的职工姓名是否与输入的职工姓名相同,若相同,则输出该职工所有的信息,并将指针向后移一个节点,再次进行判断,直到P指向空,这样就查找输出了所有匹配的职工信息。

2.2.5.删除信息模块:void E( Node *worker )

查找到要删除的职工信息节点,删除这一个节点,并将它的前驱节点的指针域指向后继节点。

2.2.6.保存职工信息模块:void G(Node *worker)

新建一个指针指向头结点,判断指针域是否为空,若为空,输出“没有记录!”,若不为空, fprintf()格式写函数 ,将职工信息以%s的格式写入指针指向的文件中。

2.2.7.读取信息模块:void F( Node *worker )

打开文件,fscanf()格式读函数,以%s 的格式从文件中读取数据存入节点中。

2.2.8定义结构体:

结构体struct worker用于存放存放员工的资料,包括员工的基本信息:工号,姓名,年龄,学历,工资,住址,电话号码。

struct workers

{

char jobno[15];  //职工号

char name[15];

char sex[15];

char birthday[15];

char degree[15];//学历

char zhiwu[15];

char gongzi[15];

char addr[15];

char tel[15];};

2.3 接口设计

表2.1:函数列表

函数名

函数格式  //即函数首部

函数功能

A

Void A()

录入职工信息

B

Void B()

修改职工信息

C

Void C()

浏览职工信息

D

Void D()

查询职工信息

F

Void F()

删除职工信息

E

Void E()

读取职工信息

G

Void G()

保存职工信息

第二章 用户手册(可选)

5.1 使用说明

运行程序会显示菜单根据菜单输入编号实现相应功能:

1. 输入职工信息

2. 修改职工信息

3. 浏览职工信息

4. 查询职工信息

5. 删除职工信息

6. 读取职工信息

7. 退出

第三章 课程设计总结

通过此次职工管理系统,让我熟悉了软件开发的流程,相信在以后的工作中我能在最短的时间内投入到大的程序开发项目中。通过这次课程设计使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体,指针,链表 …… 通过这次课程设计之后,我把前面所学过的知识又重新温故了一遍。

回顾起此次课程设计,至今我仍感慨颇多,的确,从拿到题目到完成整个编程,从理论到实践,在这些日子里,我学到很多很多的东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,

我总结出了一点点的经验如下:

①要对系统的功能和要求做出详细的分析,并合理分解任务。

②把分解出来的子任务,做给一个相对独立的模块。

③在设计一个模块之前,要简单构想一下总界面的显视情况。

④针对构想出来的界面进行程序的编写。

C 语言 项目管理 ProjectMan

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:HarmonyOS之AI能力·语音识别技术
下一篇:职工信息管理系统课设c语言
相关文章