当前位置:文档之家› 教师工资管理系统

教师工资管理系统

教师工资管理系统题目: 教师工资管理系统院系专业:姓名: 学号: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<stdio.h>#include<string.h> #include<stdlib.h> #include<conio.h> /*函数声明*/ #define N 2//宏定义参数Nvoid input();//自己写的能输入教师信息的函数 int menu();//定义一个函数菜单struct teacher//关于教师的结构{char num[15];//定义教师号的字符串char name[30];//同上char sex;//同上float dwmc;//浮点型变量float jtzz;//同上float lxdh;//.....float jbgz;//...float jt;//...float shbt;//..float dhf;//...float sdf;//..float fzs;//...float sts;//...float wsf;//...float gjj;//.....float yfgz;//..float hjkk;//..float sfgz;//...- 5 -C语言程序设计报告书 }a[N];int menu(){int n;//定义nprintf("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);}return n;//返回值}void input()//实现教师信息的输入{void save();int i;for(i=0;i<N;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();}void xiugai()//能修改信息的函数{char temp[20];int flag=0;int i;printf("请输入要修改的教师号:\n");getchar();//回车gets(temp);for(i=0;i<N;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].j bgz,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);}void shuchu()//能输出信息的函数{int i;printf("教师号、姓名、性别、单位名称、家庭住址、联系电话、基本工资、津贴、生活补贴、电话费、水电费、房租费、所得税、卫生费、公积金、应发工资、合计扣款、实发工资、:\n");for(i=0;i<N;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语言程序设计报告书 void chaxun()//能查询信息的函数{char name[20];int flag=0;int i;printf("请输入要查找的教师姓名:\n");getchar();gets(name);for(i=0;i<N;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");}void main()//主函数{ int num;system("color 6f");while(num=menu()){switch(num){case 1:input();break;- 10 -C语言程序设计报告书case 2:xiugai();break;case 4:shuchu();break;case 5:chaxun();break;case 7:exit(0);}getch();system("cls");//清屏}}void save()//保存输入的教师信息{FILE*fp;int i;if((fp=fopen("list","wb"))==NULL){printf("cannot open file\n");return;}for(i=0;i<N;i++)if(fwrite(&a[i],sizeof(struct teacher),1,fp)!=1)printf("file write error\n");fclose(fp);}四、遇到的问题及解决方法分析、体会1.遇到的问题及解决方法1. 良好的C程序,一般都是以“,* *,”来注释的,以使程序具有可读性。

相关主题