职工工资管理程序课程设计Word文档格式.docx
- 文档编号:18635432
- 上传时间:2022-12-30
- 格式:DOCX
- 页数:20
- 大小:287.65KB
职工工资管理程序课程设计Word文档格式.docx
《职工工资管理程序课程设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《职工工资管理程序课程设计Word文档格式.docx(20页珍藏版)》请在冰豆网上搜索。
2.increase()文件输入函数
3.voidshow()操作界面显示函数
4.voidfound()查找函数
5.show2()显示函数
6.voidprint2(inty)删除函数
7.voidprint3()修改信息函数
五、算法描述或流程图
1:
found()函数
:
流程图描述:
2:
increase()函数
流程图描述
3:
voidprint2(inty)函数
流程图描述
4:
voidprint3()函数
六、程序运行效果图
打开界面
查询信息
(1):
按编号查询
(2):
按姓名查询
(3):
按工资范围查询
添加信息
修改信息
5:
删除信息
七、总结
通过本次课设,不仅成功的完成了项目,复习了一个学期来所学过的知识要点,还极大的提高了自己的动手能力,受益匪浅。
通过整日含辛茹苦的编码,第一次体验到了未来本专业工作岗位上的不易,也切身感受到了一位程序员的辛苦。
其次,本次,通过本次课设,进一步提高了自己对本专业的兴趣,利于之后的学习乃至将来的工作,以及未来的方向。
最重要的是,提高了独立分析,解决问题的能力。
另一方面,这次动手实践操作,也暴露出自己在对专业知识学习上的一些漏洞。
要点记得不踏实,重点知识未理解透彻,导致在写程序时捉襟见肘。
但这也是经验,之后的学习要引以为鉴。
八、参考文献
李春葆曾平喻丹丹.《C语言程序设计教程》,清华大学出版社,2011
梁力.《程序设计与C语言》,西安交通大学出版社,2010
九、程序清单
#include"
stdio.h"
string.h"
stdlib.h"
math.h"
#defineN1000
#defineX100
inti;
structworker//定义结构体变量
{
charnum[X];
charname[X];
inty;
doublem;
doubleaward;
}staff[N];
//===============================函数线===============================
voidincrease()//输入函数
inti,i2,k;
FILE*fp;
//定义文件指针
charnum[X],name[X];
doublem,award;
if((fp=fopen("
design.txt"
"
a"
))==NULL)//打开文件
{
printf("
Cannotopenafile.\n"
);
exit(0);
}
for(i=0;
i<
N;
i++)
请输入教师的编号:
"
//输入教师信息
scanf("
%s"
num);
请输入教师的姓名:
name);
请输入教师的年龄:
%d"
&
y);
请输入教师的工资:
%lf"
m);
请输入教师的奖金:
award);
fprintf(fp,"
%s%s%d%lf%lf\n"
num,name,y,m,award);
是否结束输入:
\n1:
继续输入:
\n0:
结束输入:
\n"
i2);
if(i2==0)
break;
elseif(i2==1)
continue;
输入结束。
\n\n"
fclose(fp);
//关闭文件
//=================================================================
voidshow()//显示操作界面
*欢迎使用职工工资管理程序*\n"
=========================================================================\n"
*1:
添加信息*\n"
*2:
删除信息*\n"
*3:
查询信息*\n"
*4:
修改信息*\n"
*5:
显示信息*\n"
*6:
退出系统*\n"
请输入您要选择的操作序号,按回车键确认。
}
voidfound()
intj;
1:
按教师编号查询\n2:
按教师姓名查询\n3:
按工资范围查询\n"
请输入数字:
j);
charb[X],c[X],b1[X],c1[X];
doublen1,m1;
r"
exit
(1);
switch(j)//输入数字选择要查找的条件
case1:
//按编号查找的情况
\n请输入要查找的教师编号:
b);
fscanf(fp,"
%s%s%d%lf%lf"
staff[i].num,staff[i].name,&
staff[i].y,&
staff[i].m,&
staff[i].award);
if(strcmp(b,staff[i].num)==0)//检测输入名与存储名是否相同
if(staff[i].y==10000)
\n该行数据已被删除。
else
\n编号\t姓名\t\t年龄\t工资\t奖金\n"
%s\t%s\t\t%d\t%.0lf\t%.0lf\n"
staff[i].num,staff[i].name,staff[i].y,staff[i].m,staff[i].award);
break;
case2:
//按姓名查找的情况
请输入要查找的教师的姓名:
c);
if(strcmp(c,staff[i].name)==0)
case3:
//按工资范围查找的情况
\n请输入工资范围:
%lf,%lf"
n1,&
m1);
if(staff[i].m>
=n1&
&
staff[i].m<
=m1)
default:
//不在查找范围内的情况
\n结束该项操作。
fclose(fp);
voidprint2()//删除函数
ints,i;
))==NULL)
if(staff[i].y==0)
w"
请输入需要删除的职工的位数:
s);
staff[s-1].y=10000;
\n删除成功.\n\n"
voidprint3()//修改函数
inti1,i;
charb1[X];
请输入需要修改信息的职工号:
while(scanf("
i1)!
=EOF)
if(i1==0)
\n输入结束。
if(staff[i1-1].y==10000)
staff[i1-1].num,staff[i1-1].name,staff[i1-1].y,staff[i1-1].m,staff[i1-1].award);
\n请选择需要修改的选项:
b1);
if(strcmp(b1,"
编号"
)==0)
\n请输入修改后的编号:
staff[i1-1].num);
elseif(strcmp(b1,"
姓名"
\n请输入修改后的姓名:
staff[i1-1].name);
年龄"
\n请输入修改修改后的年龄:
staff[i1-1].y);
工资"
\n请输入修改后的工资:
staff[i1-1].m);
奖金"
\n请输入修改后的奖金:
staff[i1-1].award);
\n\n若继续修改,请输入职工号,若停止修改,请输入0:
\n=========================================================================\n"
voidshow2()
intmain()//主程序
intj,s,n2,t,k;
chary[X],d[X],r[X];
inti1,i2,i3;
chary1[X];
*职工工资管理程序*\n"
=========================================================================\n\n"
while
(1)
show();
n2);
switch(n2)
{increase();
}break;
//执行添加工作
{print2();
//执行删除工作
{found();
//执行查找工作
case4:
{print3();
//执行修改工作
case5:
{show2();
//执行显示工作
case6:
{printf("
\n您已退出系统。
//执行退出工作
printf("
输入不符合要求。
if(n2==6)
\n是否继续操作:
继续操作\n0:
结束操作\n请输入序号:
i3);
if(i3==1)
elseif(i3==0)
return0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 职工工资 管理程序 课程设计