(精品论文)c语言课程设计职工核算信息_第1页
(精品论文)c语言课程设计职工核算信息_第2页
(精品论文)c语言课程设计职工核算信息_第3页
(精品论文)c语言课程设计职工核算信息_第4页
(精品论文)c语言课程设计职工核算信息_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C 语言程序设计课程设计说明书 目录目录 职工工资核算系统职工工资核算系统 4 1.1.课程设计简介课程设计简介 4 1.1 课程设计目的4 1.2 课程设计功能4 2 2、概要设计、概要设计 4 2.1 数据体结构4 2.2 模块说明6 2.2.1 总体程序设计组成框图6 2.2.2 程序设计流程图6 3详细设计详细设计 7 3.1 模块功能说明7 3.1.1.定义函数及数组,将接收的数据存放到文件 data.txt 中7 3.1.2.职工信息及应发工资,输入显示及保存9 3.1.3.计算职工的平均工资11 3.1.4.职工工资的排序(我的任务部分)12 (1)职工工资排序部分成框图12 (2)职工工资排序部分流程图12 3.1.5.查询职工的信息14 4调试调试 16 5自我评价与总结自我评价与总结 17 C 语言程序设计课程设计说明书 职工工资核算系统职工工资核算系统 1.1.课程设计简介课程设计简介 1.1 课程设计目的课程设计目的 通过本项课程设计,可以培养独立思考、综合运用所学有关相应知识的能 力,能更好的巩固c 语言程序设计程学习的内容,掌握工程软件设计的基 本方法,课强化了动手编程能力,闯过理论与实践相结合的难关!更加了解 c 语言的好处和其机可用性!同时增加了重要性和必要性! 通过 c 语言课程设计,使学生了解高级程序设计语言结构,掌握基本的程 序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备 初步的高级语言程序设计能力。以后续各门计算机课程的学习和毕业设计打下 基础。 1.2 课程设计功能课程设计功能 这次设计的功能主要是通过编号、姓名、职称、年龄,对其进行浏览、查询、 排序,并对所有操作都给出相应的提示,方便他人操作。 2 2、概要设计、概要设计 2.1 数据体结构数据体结构 #include“stdio.h“ #include“stdlib.h“ #include“string.h“ #include“process.h“ int i,j,s,t,k=1,N=0; int c20; float M,sum; float average; FILE *fp; FILE *np; struct info char number8; /*数量*/ C 语言程序设计课程设计说明书 float age; /*年龄*/ char name20; /*姓名*/ char position5; /*职位*/ float bage; /*基准工资*/ float salary; /*应发工资*/ float title; ; struct info staff20; int f1(); int f2(); int f3(); int f4(); int f0(); 2.2 模块说明模块说明 2.2.1 总体程序设计组成框图总体程序设计组成框图 输入 1:职工信息 输入 2:职工平均 工资 输入 3:职工工资 排序 输入 4:查询职工 信息 程序开始 输入 0: 退出 程序 C 语言程序设计课程设计说明书 2.2.2 程序设计流程图程序设计流程图 选择程序 F1() f2() f3() f4() 输入职工信息 打开文件 打开文件 打开文件 并保存 判断职工系数 输入要查找的 for(i=0;in;i+) 输入要查找 职工 的职工 按工资排序 输出 求平均工资 继 续 求应发工是否 资 输出 exit Return 3详细设计详细设计 3.1 模块功能说明模块功能说明 3.1.1.定义函数及数组,将接收的数据存定义函数及数组,将接收的数据存放到文件放到文件 data.txt 中中。 #include“stdio.h” #include“stdlib.h” #include“string.h” #include“process.h” int i,j,t,s.N=0,k=1; /*定义函数*/ float M; FILE *np; /*定义文件指针*/ FILE *fp; struct TZDP char number8; /*编号*/ char name20; /*姓名*/ char position20; /*职称*/ int age; /*工龄*/ C 语言程序设计课程设计说明书 float title ; /*职称系数*/ float bage; /*基准工资*/ float salary; /*应发工资*/ void main() int f0(); /*退出程序*/ int f1(); /*职工信息及应发工资*/ int f2(); /*平均工资*/ int f3(); /*工资排序*/ int f4(); /*查询职工信息*/ printf(“-系统菜单-n”); printf(“-0.退出程序-n”); printf(“-1.职工信息及应发工资”); printf(“-2.平均工资-n”); printf(“-3.工资排序-n”); printf(“-4.查询职工信息-n”); printf(“请输入您的选择”); scanf(“%d”, switch(t) case 0:k=f0();break; case 1:k=f1();break; case 2:k=f2();break; case 3:k=f3();break; case 4:k=f4():break; default:printf(“输入有误,请重新输入”); return 0; 3.1.2.职工信息及应发工资,输入显示及保存职工信息及应发工资,输入显示及保存 Int f1( ) struct TZDP staff20; char =“初级”; char =“中级”; char =“高级”; if(fp=fopen(“data.txt”,“w”)=NULL) printf(“文件打开错误n”); exit(1) ; C 语言程序设计课程设计说明书 if(np=fopen(“num.txt”,“w”)=NULL) printf(“文件打开错误n”); exit (1); ; printf(“请输入职工人数”); scanf(“%d”,ij;i+) printf(“请输入编号:n”); scanf(“%s”,staffi.number); printf(“请输入姓名:n”); scanf(“%s”,); printf(“请输入职称:n”); scanf(“%s”,staffi.position); printf(“请输入年龄:n”); scanf(“%d”, printf(“请输入基准工资:n”); scanf(“%f”, if(strcmp( M,staffi.position)=0) staffi.title=(float)(1.0); if(strcmp( N,staffi.position)=0) staffi.title=(float)(1.2); if(strcmp( P,staffi.position)=0) staffi.title=(float)(1.5); staffi.salary=(staffi.bage)*(staffi.title)+(staffi.bage)*( float)(0.1)*(staffi.age)/2); printf(fp,“%s%s%s%d%f%f%f”,staffi.number,,staffi.position, staffi.age,staffi.bage,staffi.title,staffi.salary); fclose(fp); fprintf(np,“%d”,j); fclose(np); 3.1.3.计算职工的平均工资计算职工的平均工资 int f2() if(fp=fopen(“data.txt“,“r“)=NULL) C 语言程序设计课程设计说明书 printf(“文件打开错误!n“); exit(1); if(np=fopen(“num.txt“,“r“)=NULL) printf(“文件打开错误!n“); exit(1); fscanf(np,“%d“, fclose(np); for(i=0;iN;i+) fscanf(fp,“%s%s%s%d%f%f%f“,staffi.number,,staffi.position, fclose(fp); sum=0; for(i=0;iN;i+) sum=sum+staffi.salary; average=sum/N; printf(“编号 姓名 职称 工龄 基本工资 职工系数 应发工资 n“); for(i=0;iN;i+) printf(“%s %s %s %d %f %f %fn“,staffi.number,,staffi.position,staffi.age,staffi.b age,staffi.title,staffi.salary); printf(“平均工资:“); printf(“%fn“,average); return 1; C 语言程序设计课程设计说明书 3.1.4.职工工资的排序(我的任务部分)职工工资的排序(我的任务部分) (1)职工工资排序部分成框图)职工工资排序部分成框图 打开文件 打开成功文件打开错误 从文件中读取数据退出 按职工工资排序关闭文件返回 (2)职工工资排序部分流程图)职工工资排序部分流程图 打开文件 if(fp=NULL|np=NULL) 真 假 从文件 从文件中读取第 i 组数据 Num.txt 中 读取数据 从文件中读取第 i+1 组数据 输出数据 按职工工资排序 关闭文件 返回 继续下一步程序 C 语言程序设计课程设计说明书 int f3() if(fp=fopen(“data.txt“,“w+“)=NULL) /*打开文件 data.txt*/ printf(“文件打开错误!n“); /*文件打开错误,退出*/ exit(1); if(np=fopen(“num.txt“,“r“)=NULL) /*打开文件 num.txt*/ printf(“文件打开错误!n“); exit(1); /*退出*/ fscanf(np,“%d“, /*从文件中读取一个整数*/ fclose(np); /*关闭文件*/ for(i=0;iN;i+) fscanf(fp,“%s%s%s%d%f%f%f“,staffi.number,,staffi.position, /*循环从文件中读取数据*/ printf(“编号 姓名 职称 工龄 基本工资 职工系数 应发工资 n“); /*输出职工基本信息*/ for(i=0;iN;i+) /*循环结构*/ s=N; for(j=0;jN;j+) if(staffi.salary)(staffj.salary) /*按工资排序*/ s-; ci=s; rewind(fp); /*从文件开始位置读取数据*/ for(i=0;iN;i+) fscanf(fp,“%s%s%s%d%f%f%f“,staffi.number,,staffi.position, /*从文件中读取数据*/ for(t=0;tN;t+) for(i=0;iN;i+) C 语言程序设计课程设计说明书 if(t=ci) printf(“%s %s %s %d %f %f %fn“,staffi.number,,staffi.position,staffi.age,staffi.b age,staffi.title,staffi.salary); /*输出职工信息*/ fprintf(fp,“%s %s %s %d %f %f %f “,staffi.number,,staffi.position,staffi.age,staffi.bage, staffi.title,staffi.salary); /*写入数据*/ ci=-1; for(i=0;iN;i+) if(ci!=-1) printf(“%s %s %s %d %f %f %fn“,staffi.number,,staffi.position,staffi.age,staffi.b age,staffi.title,staffi.salary); /*输出职工信息*/ fprintf(fp,“%s %s %s %d %f %f %f “,staffi.number,,staffi.position,staffi.age,staffi.bage, staffi.title,staffi.salary); /*写入数据*/ fclose(fp); /*关闭文件*/ printf(“返回主菜单请直接按 0:“); scanf(“%d“, /*返回系统菜单*/ while(j!=0) printf(“输入错误,请重新输入:“); scanf(“%d“, return 1; /*返回*/ 3.1.5.查询职工的信息查询职工的信息 int f4() if(fp=fopen(“data.txt“,“r“)=NULL) printf(“文件打开错误!n“); C 语言程序设计课程设计说明书 exit(1); if(np=fopen(“num.txt“,“r“)=NULL) printf(“文件打开错误!n“); exit(1); fscanf(np,“%d“, fclose(np); for(i=0;iN;i+) fscanf(fp,“%s%s%s%d%f%f%f“,staffi.number,,staffi.position, fclose(fp); printf(“请输入你要查找的职工的工资:“); scanf(“%f“, for(i=0;iN;i+) if(staffi.salary=M) printf(“编号 姓名 职称 工龄 基本工资 职工系数 应发工资 n“); printf(“%s %s %s %d %f %f %fn“,staffi.number,,staffi.position,staffi.age,staffi.b age,staffi.title,staffi.salary); break; printf(“返回主菜单请直接按 0:“); scanf(“%d“, while(j!=0) printf(“输入错误,请重新输入:“); scanf(“%d“, return 1; int f0()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论