c语言课程设计 工资管理系统
本系统是使用C语言设计的工资管理系统,旨在通过该系统实现对工资管理操作,进一步掌握和利用C语言进行设计的能力,进一步理解和运用结构化程序设计的思想和方法,初步掌握开发一个小型使用系统的基本方法,掌握书写长许设计开发文档的能力,并应用C语言中的各个知识要点。
一、设计目的
1. 通过本系统实现对工资管理操作;
2. 进一步掌握和利用C语言进行设计的能力;
3. 进一步理解和运用结构化程序设计的思想和方法;
4. 初步掌握开发一个小型使用系统的基本方法;
5. 掌握书写长许设计开发文档的能力;
6. 能应用C语言中的各个知识要点;
二、设计内容
1. 每一条记录包括一个学生的编号、姓名、工资、补贴、水电费、应发和实发;
2. 输入功能:可以依次完成若干记录的输入;
3. 显示功能:将全部工作人员信息都显示在DOS界面上;
4. 查找功能:通过输入一个员工的编号看是否有这一人员,如果有则将其信息删除;
5. 插入功能:能随时在其中加入一条临时的工作人员的信息;
6. 删除功能:根据输入的编号查找出对应的工作人员的信息并将其删除;
7. 界面菜单:设计一个菜单来实现功能;
三、设计原理及算法
本程序是一个由主函数、7个子函数组成,其中7个子函数完成的功能依次是:输入工作人员信息、查找工作人员信息、统计工资、添加信息、删除信息、输出信息、菜单函数。程序运行,刚开始会有一个选择界面,让使用者可以选择想实现的功能。
输入工作员工信息:利用结构体数组实现学生成绩的数据结构设计,用输入函数可以完成若干条记录的输入;
查找工作人员信息:用查找函数将要找的人的姓名与记录做比较,找到并输出;
统计工资:利用自动求和的方法来进行将一个应发、实发统计出各个员工的信息;
添加记录:添加一个临时工作人员的信息;
删除记录:用户出入要删除的记录的编号,函数就会将与其相对应的工人信息给删除;
输出:用函数printf语句来实现将所有的数据都输出在界面上;
四、设计用用到的数据及结果
Number=01 name=a wage[0]=800 wage[1]=810 wage[2]=30
Number=02 name=b wage[0]=810 wage[1]=500 wage[2]=15
Number=03 name=c wage[0]=900 wage[1]=600 wage[2]=30
Number=04 name=d wage[0]=800 wage[1]=450 wage[2]=25
五、原始代码
#define N 100
#include "stdio.h"
#include "conio.h"
#include "stdlib.h"
#include "string.h"
int n;
struct worker {
int num;
char name[20];
int wage[3]; /*基本工资,补贴,水电费*/
int other[2]; /*应发,实发*/
}wor[N];
FILE *fp;
void insert(struct worker s) /*插入(属于维护)*/
{/*代码省略*/}
该系统的设计实现了工资管理系统的基本功能,能够对工作人员的信息进行管理,包括输入、显示、查找、添加、删除等功能,并且能够统计工资信息。该系统的设计也体现了C语言的应用和结构化程序设计的思想和方法。