欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    学院教职工工资管理系统C语言程序设计.docx

    • 资源ID:17760081       资源大小:17.01KB        全文页数:17页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    学院教职工工资管理系统C语言程序设计.docx

    1、学院教职工工资管理系统C语言程序设计学院教职工工资管理系统C语言程序设计欧阳光明(2021.03.07)#include#include#include#define N 100int n;/*职工总数*/struct teacher char name20;/*姓名*/ char sex5;/*性别*/ int year,mounth;/*出生年月*/ int age;/*年龄*/ char marrige5;/*婚姻状况*/ char addr30;/*家庭住址*/ char engineer20;/*职称*/ float wage;/*工资级别*/teacN;float sum=0;/*

    2、总工资*/void save();/*数据输入函数*/void all();/*计算工资总额函数*/void ave();/*计算平均工资函数*/void sort1();/*排序函数*/void sort2();/*排序函数*/void same();/*找工资级别相同职工名单函数*/void reviwe();/*修改函数*/void find();/*查询函数*/void print();/*数据输出函数*/void main() char ch; printf( n); printf(*欢进院工资理统*n); printf(*迎入职工管系*n); printf( n); printf(

    3、n请选择你所需要的服务,按回车确认n); printf(ntts:数据输入tntta:总工资tnttv:平均工资tnttg:按工资排序tnttx:按姓名排序tnttm:工资级别相同职工名单tnttr:修改tnttf:查询tntte:退出tn); scanf(%c,&ch); while(ch!=e) switch(ch) cases:save();break; casea:all();break; casev:ave();break; caseg:sort1();break; casex:sort2();break; casem:same();break; caser:reviwe();bre

    4、ak; casef:find(); printf(n请再次选择你所需要的服务,按回车确认n); printf(ntts:数据输入tntta:总工资tnttv:平均工资tnttg:按工资排序tnttx:按姓名排序tnttm:工资级别相同职工名单tnttr:修改tnttf:查询tntte:退出tn); getchar(); scanf(%c,&ch); /*函数功能:输入职工信息*/void save() FILE * fp; int j=0,i; char ch2; int n=0; printf(请选择输入方式:n); printf(1:向管理系统重新输入数据,并删除原有数据n2:向系统增加数

    5、据n); scanf(%d,&i);/*输入选项*/ if(i=1) if(fp=fopen(C:file1.dat,wb+)=NULL)/*判断文件能否打开*/ printf(can not open this filen); exit(0); printf(你是否要输入职工信息?(是:y/否:n); scanf(%s,ch); while(strcmp(ch,y)=0|strcmp(ch,Y)=0)/*判断是否要录入新信息*/ printf(n姓名t); scanf(%s,teacj.name); printf(n性别(男:b/女:g)t); scanf(%s,teacj.sex); pr

    6、intf(n生日:年t); scanf(%d,&teacj.year); printf(n月t); scanf(%d,&teacj.mounth); while(teacj.mounth12) printf(输入月份有误请重输); scanf(%d,&teacj.mounth); printf(n年龄t); scanf(%d,&teacj.age); printf(n婚否(是y/否n)t); scanf(%s,teacj.marrige); printf(n地址t); scanf(%s,teacj.addr); printf(n职称t); scanf(%s,teacj.engineer); p

    7、rintf(n工资t); scanf(%f,&teacj.wage); fwrite(&teacj,sizeof(struct teacher),1,fp);/*信息写入磁盘*/ j+; printf(你是否要输入职工信息?(是:y/否:n)n); getchar(); scanf(%c,&ch); fclose(fp);/*关闭文件*/ if(i=2) if(fp=fopen(c:file1.dat,rb)=NULL)/*判断文件能否打开*/ printf(can not open this filen); exit(0); for(n=0;(fread(&teacn,sizeof(stru

    8、ct teacher),1,fp)=1);n+)continue;/*将职工信息读入内存*/ fclose(fp); printf(你是否要增加职工信息?(是:y/否:n); scanf(%s,ch); while(strcmp(ch,y)=0|strcmp(ch,Y)=0)/*判断是否要录入新信息*/ printf(n姓名t); scanf(%s,teacj+n.name); printf(n性别(男:b/女:g)t); scanf(%s,teacj+n.sex); printf(n生日:年t); scanf(%d,&teacj+n.year); printf(n月t); scanf(%d,

    9、&teacj+n.mounth); while(teacj+n.mounth12) printf(输入月份有误请重输); scanf(%d,&teacj.mounth); printf(n年龄t); scanf(%d,&teacj+n.age); printf(n婚否(是y/否n)t); scanf(%s,teacj+n.marrige); printf(n地址t); scanf(%s,teacj+n.addr); printf(n职称t); scanf(%s,teacj+n.engineer); printf(n工资t); scanf(%f,&teacj+n.wage); /fwrite(&

    10、teacj+n,sizeof(struct teacher),1,fp);/*信息写入磁盘*/ n+; printf(你是否要输入职工信息?(是:y/否:n)n); getchar(); scanf(%c,&ch); if(fp=fopen(c:file1.dat,wb)=NULL)/*判断文件能否打开*/ printf(can not open this filen); exit(0); for(j=0;jn;j+) fwrite(&teacj,sizeof(struct teacher),1,fp);/*信息写入磁盘*/ fclose(fp); /*函数功能:计算总工资*/ void al

    11、l() FILE*fp; n=0; sum=0; if(fp=fopen(c:file1.dat,ab+)=NULL) printf(can not open this filen); exit(0); printf(姓名t性别t生日:年 月t年龄t婚否t地址t职称t工资n); for(n=0;(fread(&teacn,sizeof(struct teacher),1,fp)=1);n+)/*将职工信息读入内存*/ printf(%st%st %d %dt%dt%st%stt%st%fn,teacn.name,teacn.sex,teacn.year,teacn.mounth,teacn.a

    12、ge,teacn.marrige,teacn.addr,teacn.engineer,teacn.wage);/*将职工信息输出到屏幕上*/ sum=sum+teacn.wage; continue; printf(总工资为%fn,sum); fclose(fp); /*函数功能:计算平均工资*/ void ave() float aver; n=0; all();/*调用计算总工资函数得到总工资*/ (float)(aver=sum/n);/*计算平均工资*/ printf(平均工资为%fn,aver); /*函数功能:按工资由低到高排序*/ void sort1() FILE *fp; i

    13、nt i,j; struct teacher temp;/*定义一个结构体变量一边在交换顺序是暂时存放数据*/ if(fp=fopen(c:file1.dat,ab+)=NULL)/*以只读方式打开一个二进制文件判断能否打开*/ printf(can not open this filen); exit(0); /while(!feof(fp)/*检查文件是否结束*/ for(n=0;(fread(&teacn,sizeof(struct teacher),1,fp)=1);n+) continue;/*将职工信息读入内存*/ /*排序*/ for(i=0;in;i+) for(j=0;jte

    14、acj+1.wage) temp=teacj; teacj=teacj+1; teacj+1=temp; print();/*调用数据输出函数,输出结果*/ fclose(fp); void sort2() FILE *fp; int i,j; struct teacher temp;/*定义一个结构体变量一边在交换顺序是暂时存放数据*/ if(fp=fopen(c:file1.dat,ab+)=NULL)/*以只读方式打开一个二进制文件判断能否打开*/ printf(can not open this filen); exit(0); for(n=0;(fread(&teacn,sizeof

    15、(struct teacher),1,fp)=1);n+) continue;/*将职工信息读入内存*/ /*排序*/ for(i=0;in;i+) for(j=0;j0) temp=teacj; teacj=teacj+1; teacj+1=temp; print();/*调用数据输出函数,输出结果*/ fclose(fp); /*函数功能:找工资级别相同的职工名单*/ void same() FILE * fp; static int t=0;/*定义一个静态变量*/ int i,j,k,m,a,l; struct teacher tempN;/*定义一个结构体数组存放工资级别相同的职工名

    16、单*/ if(fp=fopen(c:file1.dat,ab+)=NULL)/*以读写方式打开一个文本文件并判断能否打开*/ printf(can not open this filen); exit(0); printf(姓名t性别t生日:年 月t年龄t婚否t地址t职称t工资n); for(n=0;(fread(&teacn,sizeof(struct teacher),1,fp)=1);n+)/*将职工信息读入内存*/ printf(%st%st %d %dt%dt%st%st%st%fn,teacn.name,teacn.sex,teacn.year,teacn.mounth,teacn

    17、.age,teacn.marrige,teacn.addr,teacn.engineer,teacn.wage);/*将职工信息输出到屏幕上*/ continue; /*找相同*/ for(i=0;i0) for(l=0;l0) continue;/*说明该数已在上一级比较中存入temp数组中了不需再比结束本次循环*/ else for(j=i;jn;j+) if(teaci.wage=teacj.wage) tempt+=teacj; printf(n工资级别为%f的名单为:t,tempt-1.wage); for(k=m;kt;k+) printf(%st,tempk.name); fcl

    18、ose(fp); /*函数功能:删除不需要的职工信息*/ void reviwe()/*删除函数*/ FILE*fp; struct teacher temp; int i,j,k=0; char name20; char ch2; int a; if(fp=fopen(c:file1.dat,rb)=NULL)/*判断文件能否打开*/ printf(can not open this filen); exit(0); for(n=0;(fread(&teacn,sizeof(struct teacher),1,fp)=1);n+)continue;/*将职工信息读入内存*/ fclose(f

    19、p); if(n=0) printf(没有记录n); else printf(请输入姓名n); scanf(%s,name); for(i=0;in;i+) if(strcmp(name,teaci.name)=0)/*找与要修改的信息相同的姓名*/ printf(该职工信息为:n); printf(%st%st%dt %d %dt%st%st%st%fn,teaci.name,teaci.sex,teaci.year,teaci.mounth,teaci.age,teaci.marrige,teaci.addr,teaci.engineer,teaci.wage); break; print

    20、f(是否删除?(y/n); scanf(%s,ch); if(strcmp(ch,y)=0|strcmp(ch,Y)=0)/*判断是否删除*/ printf(已成功删除信息nn); for(j=i;jn;j+) strcpy(teacj.addr,teacj+1.addr); strcpy(teacj.engineer,teacj+1.engineer); strcpy(teacj.marrige,teacj+1.marrige); strcpy(teacj.name,teacj+1.name); strcpy(teacj.sex,teacj+1.sex); teacj.age=teacj+1

    21、.age; teacj.year=teacj+1.year; teacj.mounth=teacj+1.mounth;break; if(fp=fopen(c:file1.dat,wb)=NULL)/*判断文件能否打开*/ printf(can not open this filen); exit(0); for(j=0;jn-1;j+) fwrite(&teacj,sizeof(struct teacher),1,fp);/*信息写入磁盘*/ fclose(fp); /*函数功能:查询*/ void find() FILE*fp; int i; char name20; char ch2;

    22、if(fp=fopen(c:file1.dat,ab+)=NULL)/*判断文件能否打开*/ printf(can not open this filen); exit(0); for(n=0;(fread(&teacn,sizeof(struct teacher),1,fp)=1);n+)continue;/*将职工信息读入内存*/ fclose(fp); if(n=0) printf(没有记录n); else printf(是否查询?(y/n); scanf(%s,ch); while(strcmp(ch,y)=0|strcmp(ch,Y)=0) printf(请输入姓名n); scanf

    23、(%s,name); for(i=0;in;i+) if(strcmp(name,teaci.name)=0)/*找与要修改的信息相同的姓名*/ printf(你要查询的职工信息如下:n); printf(%st%st%dt %d %dt%st%st%st%fn,teaci.name,teaci.sex,teaci.year,teaci.mounth,teaci.age,teaci.marrige,teaci.addr,teaci.engineer,teaci.wage); break; if(i=n) printf(没有你需要查询的信息n); printf(是否继续查询?(y/n); scanf(%s,ch); /*函数功能:输出数据*/ void print() int i; printf(n姓名t性别t生日:年 月t年龄t婚否t地址t职称t工资n); for(i=0;in;i+) printf(%st%st%dt %d %dt%st%st%st%fn,teaci.name,teaci.sex,teaci.year,teaci.mounth,teaci.age,teaci.marrige,teaci.addr,teaci.engineer,teaci.wage);


    注意事项

    本文(学院教职工工资管理系统C语言程序设计.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开