此项目为BJFU2020级课程设计 供学弟学妹们参考
项目总体介绍: 

一、总体介绍

1. 项目名称:高校教师工资管理系统

2. 项目简介:

完成高等院校教师工资管理软件开发。教师的基本信息包括:工号、姓名、学院、职称,职称分为:教授、副教授、讲师、助教。教师的工资信息包括:工号、月份、基本工资、业绩津贴、扣除费用、应发工资、实发工资,不同职称教师的基本工资、业绩津贴、扣除费用不同。

二、具体要求

1. 系统功能要求

以菜单的方式完成以下功能。

高校教师工资管理系统

1

录入数据并保存

录入教师的基本信息

录入教师的工资信息

2

修改数据并保存

(难点)

根据工号修改某位教师的基本信息和工资信息

根据姓名修改某位教师的基本信息和工资信息

删除某一工号的教师的所有信息

3

查询显示

显示所有教师的基本信息(以工号为序)

根据月份显示所有教师当月工资信息(以工号为序)

根据工号查询某位教师某一月份的基本信息和工资信息

根据姓名查询某位教师某一月份的基本信息和工资信息

4

统计分析

根据月份,统计不同学院教师的平均应发工资和平均实发工资(以实发工资为序显示)

根据月份,统计不同职称教师的平均应发工资和平均实发工资(以应发工资为序显示)

5

退出

提示退出

2. 各项功能要求

1)录入数据并保存

进入二级菜单:

  1. 录入教师基本信息:提示用户输入基本信息,并保存。注意要有查重,同一工号的教师不能出现两次。(查重是难点)
  2. 录入教师工资信息:显示所有教师基本信息。提示用户输入已有教师工号,然后提示输入月份等工资信息,并计算应发工资和实发工资后保存。注意要有查重,同一工号的教师不能出现两次。(判断是否为已有教师信息,查重是难点。)
  1. 修改数据并保存

进入二级菜单:

  1. 提示输入工号:显示该工号教师的所有信息。提示输入要修改的月份和信息,输入新数据后,保存数据,并替换掉旧数据。
  2. 提示输入姓名:显示所有该同名教师的所有信息。提示输入要修改的教师工号和月份,提示输入要修改的信息,输入新数据后,保存数据,并替换掉旧数据。
  3. 提示输入要删除的工号,两次确认后删除该工号教师的基本信息和工资数据,并更新数据文件。

3)查询显示

进入二级菜单:

  1. 显示所有教师的基本信息,按照工号从小到大列表显示。
  2. 提示输入月份,显示当月所有教师的工资信息,按照工号从小到大列表显示。
  3. 提示输入工号和月份,显示该工号教师的基本信息和当月工资信息。
  4. 提示输入姓名和月份,显示所有同名教师的基本信息和当月工资信息。

4)统计分析

进入二级菜单:

  1. 提示输入月份,根据月份,统计不同学院教师的平均应发工资和平均实发工资(以实发工资为序显示)。
  2. 提示输入月份,根据月份,统计不同职称教师的平均应发工资和平均实发工资(以应发工资为序显示)。

5)退出

提示用户确实要退出?y/n

用户输入y后退出。

2. 程序设计要求

(1)要合理使用枚举(选)、结构体、结构体数组、结构体指针访问数组。

(2)逻辑独立的功能定义在函数中。

(3)要有合理提示,例如修改、删除需提示确认。

(4)考虑程序鲁棒性,对不合法数据要有错误处理机制。

(5)所有数据保存在文件中。

教师的相应结构体:

struct teacher
{int number;//工号char xy[10];//学院char zc[10];//职称int month;//月份char name[10];float salary;//基本工资float allowance;//业绩津贴float should;//应发工资float due;//扣除费用float total;float actual;//实发工资
}tea[100],test[1];
typedef struct teacher1
{int number;//工号char xy[10];//学院char zc[10];//职称char name[10];
}tt1;
typedef struct teacher2
{int month;//月份float salary;//基本工资float allowance;//业绩津贴float should;//应发工资float due;//扣除费用float total;float actual;//实发工资
}tt2;
相应函数:
void mainmenu();
void read_from_file();
void write_to_file();
void tea_new();
void searchmenu();
void show_all();
void search_id();
void search_name();
void deletemenu();
void delete_all();
void delete_single();
void delete_id();
void delete_name();
void change_id();
void analyze_menu();//统计分析
void analyze1();//xy统计分析
void analyze2();//zc统计分析
void search1();//按月份查询
void search2();//按工号和月份
void search3();//按姓名和月份查询
void change_menu();
void change_name();
void menu1();//添加菜单
void new1();
void new2();void writeto();//将基本信息写到文件
void readto();//将基本信息读到文件
主菜单
void menu1()
{char choic;system("cls");readto();while (1){printf("\n\t------录入菜单-------");printf("\n\t------[1]录入基本信息--------");printf("\n\t------[2]录入工资信息------");printf("\n\t------[3]返回主菜单------");printf("\n\t*****************************");printf("\n\t请选择:\n");int k;scanf("%d", &k);if (k==3){break;}switch (k){case 1:new1(); break;case 2:new2(); break;default:break;}}}
分析菜单
void analyze_menu()
{char choic;system("cls");printf("\n\t------统计分析菜单-------");printf("\n\t------[1]按学院统计--------");printf("\n\t------[2]按职称查询------");printf("\n\t*****************************");printf("\n\t请选择:\n");choic = getch();switch (choic){case'1':analyze1(); break;case'2':analyze2(); break;default:break;}
}

等有时间的再补充

高校教师工资管理系统/C语言课设相关推荐

  1. 学生信息管理系统c语言课设,学生信息管理系统C语言课设.doc

    学生信息管理系统C语言课设 目录 一.需求分析2 二.概要设计2 三.详细设计4 四.调试分析9 五.用户手册9 六.测试数据9 七.附录10 一.需求分析学生学籍管理系统用数据文件存放学生的学籍,可 ...

  2. 网吧管理系统------C语言课设

    网吧管理系统------C语言课设 1.课程设计报告的要求 2.实现管理员注册和登录模块的代码 3.实现管理员对用户的管理功能及简介如下,包括上下机,余额积分加减等功能. 4.主函数 5.存在的不足 ...

  3. C语言课设物资管理系统,C语言课设之物资管理系统.doc

    C语言课设之物资管理系统 C语言课程设计 目 录 1.需求分析: 2.系统总框图: 3.每个模块的设计分析: 4.列出所有定义的函数及说明: 5.举例说明1.2个比较有特点的算法: 6.数据分析.完备 ...

  4. 课设 c语言编译学籍管理系统,C语言课设之学生学籍管理系统

    <C语言课设之学生学籍管理系统>由会员分享,可在线阅读,更多相关<C语言课设之学生学籍管理系统(10页珍藏版)>请在人人文库网上搜索. 1.题目:学生学籍管理系统 目录:一.个 ...

  5. c语言建筑工地管理系统,C语言课设之建筑工地信息管理系统.doc

    C语言课设之建筑工地信息管理系统 C 语 言 课 程 实 习 报 告 建筑工地信息管理系统 题目要求 <建筑工地信息管理系统>要求要建立与建筑相关的四个文件信息:1)项目2)工地 3)配件 ...

  6. c语言设计之歌曲信息管理系统,C语言课设之歌曲信息管理系统

    <C语言课设之歌曲信息管理系统>由会员分享,可在线阅读,更多相关<C语言课设之歌曲信息管理系统(10页珍藏版)>请在人人文库网上搜索. 1.C语言课程设计目 录1.题目要求2. ...

  7. 职工管理系统c语言课设需求分析,人力资源管理系统需求分析报告及系统架构图...

    人力资源管理系统需求分析 小组成员:朱国辉 许珍源 1.需求获取及分析 1.1业务需求 随着现在计算机技术的不断完善,以及现代经济的不断发展,传统的管理技术不再满足企业的需要,越来越多的企业注重计算机 ...

  8. Java教职员工工资管理系统(Java课设)

    // 改代码为片段,全文五百行左右,也支持定做其他系统,该系统无框架(也支持定做有框架的系统) // QQ: 3233963554(有偿,包解决问题) package com;import java. ...

  9. C语言课设-----工资管理系统(附全部源码)

    C语言课设-----工资管理系统(附全部源码) 本系统分三个部分: 1.出售金鱼 2.数字菱形 3.工资管理系统 (ps:另外添加了登录界面 id:qwq password:123 可自己在代码里再更 ...

最新文章

  1. ceph unfound object问题的解决
  2. Asp.Net的控件如何与Server交互
  3. matlab怎么实现循环,matlab怎么实现直到型循环
  4. Python编程基础:第二节 多重赋值Multiple Assignment
  5. android升级功能键,Android 按键添加转载
  6. power计算机英语,十万火急求解计算机英语!AC power lineAND gateAND-OR circuitXOR gateunrel...
  7. 系列10—消息中间件
  8. 深入理解java虚拟机(十三) Java 即时编译器JIT机制以及编译优化
  9. 框架层 java_简单就是美!浅谈java各层框架。
  10. 百度AI学习:三、文字识别
  11. 乐华娱乐前训练生黄智博卖口罩诈骗案宣判:获刑三年三个月
  12. 视频rtmp协议简介
  13. 怎样把计算机放到手机桌面,如何将电脑桌面的文档发送到手机微信
  14. linux 加速播放软件,VirtualBox 6.1首次推出Linux 5.4支持,加速的视频播放及更多功能...
  15. terminal显示mysql_mac如何在terminal终端中操作mysql
  16. 分享几个微信小程序的视频教程
  17. java pojo生成_使用maven根据JSON文件自动生成Java POJO类(Java Bean)源文件
  18. 【渝粤教育】 国家开放大学2020年春季 1332中文学科论文写作 参考试题
  19. 2022年全球市场有机硅结构密封胶总体规模、主要生产商、主要地区、产品和应用细分研究报告
  20. 钉钉,腾讯会议中使用虚拟人物形象上网课

热门文章

  1. mysql定时同步数据库|mysql数据库实时同步工具|mysql 同步数据库
  2. 把16G iPhone 6 Plus 纯手工升级到 128G
  3. c语言窗函数的作用,窗函数的C语言实现
  4. java网络编程socket\server\TCP笔记(转)
  5. 第4天 java高级特性增强 ---有用 第一遍
  6. Matlab中Cell(单元数据)的用法
  7. Windows10下编译Aseprite
  8. 2018年AI趋势盘点(02)| Hinton、吴恩达、李飞飞…… | 解读行业
  9. JAVA短信接口代码,实现发送短信验证码
  10. 前端与English