教师工资管理系统.docx
- 文档编号:15672607
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:15
- 大小:19.03KB
教师工资管理系统.docx
《教师工资管理系统.docx》由会员分享,可在线阅读,更多相关《教师工资管理系统.docx(15页珍藏版)》请在冰点文库上搜索。
教师工资管理系统
教师工资管理系统
题目:
教师工资管理系统院系专业:
姓名:
学号:
2012年3月13日
C语言程序设计报告书
一、程序设计的目的和题目要求..................................................................-2-二、流程图....................................................................................................-4-三、源代码程序.............................................................................................-5-四、遇到的问题及解决方法分析、体会....................................................-11-
1.遇到的问题及解决方法....................................................................-11-
2.心得体会............................................................................................-15-
-1-
C语言程序设计报告书
一、程序设计的目的和题目要求
用所学过的C语言程序设计知识,掌握结构化程序设计的基本思路和方法,利用所学的基本知识和技能,发挥自学能力和查找资料的能力,解决稍微复杂的结构化程序设计问题,加深对所学知识的理解与掌握,增强学生利用自己所学知识解决实际问题的能力,为以后的程序开发打下基础。
1.初步掌握开发一个小型实用系统的基本方法:
结合实际应用的要求,使课程设计既覆盖知识点,又接近工程实际需要。
通过激发学习兴趣,调动学生主动学习的积极性,并引导他们根据实际编程要求,训练自己实际分析问题的能力及编程能力,并养成良好的编程习惯。
2.使学生掌握,语言的基本概念、语法、语义和数据类型的使用特点。
3.使学生掌握,语言程序设计的方法及编程技巧,能正确使用,语言编写程序。
4.使学生掌握调试程序的基本方法及上机操作方法。
5.掌握书写程设计开发文档的能力,使学生学会撰写课程设计总结报告。
课程设计的思想和方法还可以作为学生做毕业论文时的参考资料。
本次课程设计主要目的在于,通过综合程序课程设计,加深对《C语言》课程所学知识的理解,进一步巩固C语言讲法规则。
学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而培养和提高
-2-
C语言程序设计报告书
学生的独立分析问题和解决实际问题的能力。
题目要求:
每个教师的信息为:
教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、津贴、生活补贴、应发工资、电话费、水电费、房租、所得税、卫生费、公积金、合计扣款、实发工资。
注:
应发工资=基本工资+津贴+生活补贴;合计扣款=电话费+水电费+房租+所得税+卫生费+公积金;实发工资=应发工资,合计扣款。
A、教师信息处理
信息
(1)输入教师
(2)插入(修改)教师信息
(3)删除教师信息
(4)浏览教师信息
(5)查询教师信息
(6)导入教师信息
(7)保存教师信息
B、教师数据处理
(1)按教师号录入教师基本工资、津贴、生活补贴、电话费、水电费、房租、所得税、卫生费、公积金等基本数据。
(2)教师实发工资、应发工资、合计扣款计算。
(3)教师数据管理
(4)教师数据查询(5)教师综合信息输出
-3-
C语言程序设计报告书
二、流程图
开始
选A选B
选0教师信教师数
息处理据处理
输插删浏查导保录教教教
工入入除览询入存入师师师
资教教教教教教教基数数综
计师师师师师师师本据据合
算信信信信信信信数管查信
息息息息息息息据理询息
输
出
结束
-4-
C语言程序设计报告书
三、源代码程序:
#include
#include
#defineN2//宏定义参数N
voidinput();//自己写的能输入教师信息的函数intmenu();//定义一个函数菜单
structteacher//关于教师的结构
{
charnum[15];//定义教师号的字符串
charname[30];//同上
charsex;//同上
floatdwmc;//浮点型变量
floatjtzz;//同上
floatlxdh;//.....
floatjbgz;//...
floatjt;//...
floatshbt;//..
floatdhf;//...
floatsdf;//..
floatfzs;//...
floatsts;//...
floatwsf;//...
floatgjj;//.....
floatyfgz;//..
floathjkk;//..
floatsfgz;//...
-5-
C语言程序设计报告书}a[N];
intmenu()
{
intn;//定义n
printf("1.输入教师信息\n");//产生格式化输出函数
printf("2.插入(修改)教师信息\n");//。
。
printf("3.删除教师信息\n");//。
。
。
printf("4.浏览教师信息\n");//。
。
。
printf("5.查询教师信息\n");//。
。
。
printf("6.导入教师信息\n");//。
。
。
printf("7.程序结束\n");//。
。
。
printf("************************************************\n");//。
。
。
printf("请输入你要执行的操作:
\n");//。
。
。
。
scanf("%d",&n);//格式输入函数
while(n<1||n>7)//循环语句
{
printf("请重新输入\n");
scanf("%d",&n);
}
returnn;//返回值
}
voidinput()//实现教师信息的输入
{
voidsave();
inti;
for(i=0;i -6- C语言程序设计报告书 { printf("请输入教师号: ");//printf和scanf的输入输出 scanf("%s",&a[i].num); printf("请输入教师姓名: "); scanf("%s",&a[i].name); printf("请输入教师性别: "); scanf("%s",&a[i].sex); printf("请输入教师单位名称: "); scanf("%f",&a[i].dwmc); printf("请输入教师家庭住址: "); getchar(); scanf("%f",&a[i].jtzz); printf("请输入教师联系电话: "); getchar(); scanf("%f",&a[i].lxdh); printf("请输入教师基本工资: "); getchar(); scanf("%f",&a[i].jbgz); printf("请输入教师津贴: "); getchar(); scanf("%f",&a[i].jt); printf("请输入教师生活补贴: "); getchar(); scanf("%f",&a[i].shbt); printf("请输入教师电话费: "); getchar(); scanf("%f",&a[i].dhf); printf("请输入教师水电费: "); getchar(); scanf("%f",&a[i].sdf); printf("请输入教师房租费: "); getchar(); scanf("%f",&a[i].fzs); -7- C语言程序设计报告书 printf("请输入教师所得税: "); getchar(); scanf("%f",&a[i].sts); printf("请输入教师卫生费: "); getchar(); scanf("%f",&a[i].wsf); printf("请输入教师公积金: "); getchar(); scanf("%f",&a[i].gjj); a[i].yfgz=a[i].jbgz+a[i].jt+a[i].shbt; a[i].hjkk=a[i].dhf+a[i].sdf+a[i].fzs+a[i].sts+a[i].wsf+a[i].gjj; a[i].sfgz=a[i].yfgz-a[i].hjkk; printf("\n%f%f%f\n",a[i].yfgz,a[i].hjkk,a[i].sfgz); } save(); } voidxiugai()//能修改信息的函数 { chartemp[20]; intflag=0; inti; printf("请输入要修改的教师号: \n"); getchar();//回车 gets(temp); for(i=0;i { if(strcmp(temp,a[i].num)==0) { printf("%s%s%s%f%f%f%f%f%f%f%f%f%f%f%f \n",a[i].num,a[i].name,a[i].sex,a[i].dwmc,a[i].jtzz,a[i].lxdh,a[i].jbgz,a[i].jt,a[i].shbt,a[i] .dhf,a[i].sdf,a[i].fzs,a[i].sts,a[i].wsf,a[i].gjj); printf("请重新输入教师号、姓名、性别、单位名称、家庭住址、联 -8- C语言程序设计报告书 系电话、基本工资、津贴、生活补贴、电话费、水电费、房租费、所得税、卫生 费、公积金: \n"); input(); flag=1; } } if(flag==0) printf("查无此人! \n"); printf("修改后的教师信息: \n"); printf("教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、 津贴、生活补贴、电话费、水电费、房租费、所得税、卫生费、公积金: \n"); for(i=0;i<2;i++); printf("%s%s%s%f%f%f%f%f%f%f%f%f%f%f%f\n",a[i].num,a[i].name a[i].sex,a[i].dwmc,a[i].jtzz,a[i].lxdh,a[i].jbgz,a[i].jt,a[i].shbt,a[i].dhf,a[i].sdf,a[i].fzs,a[ i].sts,a[i].wsf,a[i].gjj); } voidshuchu()//能输出信息的函数 { inti; printf("教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、 津贴、生活补贴、电话费、水电费、房租费、所得税、卫生费、公积金、应发工 资、合计扣款、实发工资、: \n"); for(i=0;i printf("%s%s%c%f%f%f%f%f%f%f%f%f%f%f%f\n",a[i].num,a[i].name a[i].sex,a[i].dwmc,a[i].jtzz,a[i].lxdh,a[i].jbgz,a[i].jt,a[i].shbt,a[i].dhf,a[i].sdf,a[i].fzs,a[ i].sts,a[i].wsf,a[i].gjj); printf("%f%f%f\n",a[i].yfgz,a[i].hjkk,a[i].sfgz); } -9- C语言程序设计报告书voidchaxun()//能查询信息的函数 { charname[20]; intflag=0; inti; printf("请输入要查找的教师姓名: \n"); getchar(); gets(name); for(i=0;i { if(strcmp(name,a[i].name)==0) { printf("教师号、姓名、性别、单位名称、家庭住址、联系电话、基 本工资、津贴、生活补贴、电话费、水电费、房租费、所得税、卫生费、公积金: \n"); printf("%s%s%s%f%f%f%f%f%f%f%f%f%f%f%f\n",a[i].num,a[i].name a[i].sex,a[i].dwmc,a[i].jtzz,a[i].lxdh,a[i].jbgz,a[i].jt,a[i].shbt,a[i].dhf,a[i].sdf,a[i].fzs,a[ i].sts,a[i].wsf,a[i].gjj); flag=1; } } if(flag==0) printf("查无此人! \n"); } voidmain()//主函数 {intnum; system("color6f"); while(num=menu()) { switch(num) { case1: input();break; -10- C语言程序设计报告书 case2: xiugai();break; case4: shuchu();break; case5: chaxun();break; case7: exit(0); } getch(); system("cls");//清屏 } } voidsave()//保存输入的教师信息 { FILE*fp; inti; if((fp=fopen("list","wb"))==NULL) { printf("cannotopenfile\n"); return; } for(i=0;i if(fwrite(&a[i],sizeof(structteacher),1,fp)! =1) printf("filewriteerror\n"); fclose(fp); } 四、遇到的问题及解决方法分析、体会 1.遇到的问题及解决方法 1.良好的C程序,一般都是以“,**,”来注释的,以使程序 具有可读性。 -11- C语言程序设计报告书 2.LNK2001错误分析及解决方法 第一类,运行环境问题 在创建MFC项目时,不使用MFCAppWizard向导,如果没有设置好项目参数,就会在编译时产生errorLNK2001错误, 下面介绍解决的方法: 1.Windows子系统设置错误,提示: libcmtd.lib(crt0.obj): errorLNK2001: unresolved externalsymbol_main Windows项目要使用Windows子系统,而不是Console,可以这样设置: [Project]-->[Settings]-->选择"Link"属性页, 在ProjectOptions中将/subsystem: console改成/subsystem: windows 2.Console子系统设置错误,提示: LIBCD.lib(wincrt0.obj): errorLNK2001: unresolved externalsymbol_WinMain@16 控制台项目要使用Console子系统,而不是Windows,设置: [Project]-->[Settings]-->选择"Link"属性页, 在ProjectOptions中将/subsystem: windows改成/subsystem: console 3.程序入口设置错误,提示: -12- C语言程序设计报告书 msvcrtd.lib(crtexew.obj): errorLNK2001: unresolved externalsymbol_WinMain@16 通常,MFC项目的程序入口函数是WinMain,如果编译项目的 Unicode版本,程序入口必须改为wWinMainCRTStartup,所以需要 重新设置程序入口: [Project]-->[Settings]-->选择"C/C++"属性页, 在Category中选择Output, 再在Entry-pointsymbol中填入wWinMainCRTStartup,即可 4.线程运行时库设置错误,提示: nafxcwd.lib(thrdcore.obj): errorLNK2001: unresolvedexternalsymbol__beginthreadex nafxcwd.lib(thrdcore.obj): errorLNK2001: unresolvedexternalsymbol__endthreadex 这是因为MFC要使用多线程时库,需要更改设置: [Project]-->[Settings]-->选择"C/C++"属性页, 在Category中选择CodeGeneration, 再在Userun-timelibrary中选择DebugMultithreaded或者 multithreaded 第二类: 程序没有添加必要的库。 当copy网上的源程序,在本机编译的时候,由于新建的工程没有 把连接用的库,在连接的时候添加进去,所以一些函数、变量找不到定 -13- C语言程序设计报告书 义的库文件,从而出错。 t 解决方法: 1.先弄清楚到底缺了哪些库,再在project,》setting,》link里面的moldul/lib添加这些库的文件。 2.可以用以下形式在源程序里面添加下面代码: #pragmacomment(lib,"openGL32.lib");#pragmacomment(lib,"glu32.lib");#pragmacomment(lib,"glaux.lib"); 添加Winmm.lib和头文件中包含Mmsystem.h 选择"project"->"setting"->"link"->"Object/librarymodules"然后添加"Winmm.lib"就可以了。 自己的错误: LINK: fatalerrorLNK1168: cannotopenDebug/EX_HelloWin.exefor -14- C语言程序设计报告书 writing 一般这种情况意味着你的程序上一次运行并没有正常关闭2.心得体会 要完成一个优秀的程序,必须熟练掌握各种语句的特点及用法,要学会举一反三,充分实现C程序的灵活性。 在平时的学习实践中,要不断开动脑筋,活学活用。 要发扬团体合作的精神,互帮互助,共同进步。 善于发问,善于思考。 在写程序的过程中,我又碰到了一些难题,比如按键的闪烁问题,按键不能直接运行的问题,不能连续运行问题,还有数字不能成串显示问题。 其中有些是问你的,有些是我自己解决的。 比如连续运行,闪烁做好后,我发现每次运行只能按一个数字,按第二个数字的时候就跳出了,后来我想到了在switch之前加for的办法,这样就可以用循环的办法达到我想达到的目的。 上机调试程序,并非仅仅为了结果,而应当从结果出发来进一步分析程序,使程序简洁化。 上机调试程序可帮助我们更好地理解程序,改正自己的误解或疏忽大意,从而掌握编程的一些技巧。 C语言是一个很复杂的工程设计,需要学习的东西还有很多。 -15-
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 教师工资 管理 系统
![提示](https://static.bingdoc.com/images/bang_tan.gif)