《C语言教师管理系统代码(共6页).docx》由会员分享,可在线阅读,更多相关《C语言教师管理系统代码(共6页).docx(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上#include #include #include #include /*函数声明*/void input(); / 此函数功能是输入教师信息int menu();/此函数是一个菜单/学号:8struct data int year; int month; int day;struct teacher char num15; char name30; struct data bir; char sex; float jbgz; float jt; ;int menu()int n;printf(1. 实现教师信息的录入n);printf(2. 求每个教师的总工资,并
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( n7)printf(请重新输入n);scanf(%d,&n); return n;/实现教师信息录入void input(struct teacher a,int n)int i;printf(石家庄经济学院n);f
3、or(i=0;in;i+)printf(请输入教师工作号:); scanf(%s,ai.num);printf(请输入教师姓名:); scanf(%s,ai.name); printf(请输入教师出生日期:); scanf(%d%d%d,&ai.bir.year,&ai.bir.month,&ai.bir.day); printf(请输入教师性别:);getchar();scanf(%c,&ai.sex); printf(请输入教师基本工资:);scanf(%f,&ai.jbgz); printf(请输入教师津贴:); scanf(%f,&ai.jt); /实现教师信息输出void outpu
4、t(struct teacher a,int n)int i;printf(工作号,姓名,出生日期,性别,基本工资,津贴,总工资:n);for(i=0;in;i+)printf(%s %s %d %d %d %c %f %f %fn,ai.num,ai.name,ai.bir.year,ai.bir.month,ai.bir.day,ai.sex,ai.jbgz,ai.jt,ai.jbgz+ai.jt);/按工资从高到低排序,输出教师信息void sortbyzgz (struct teacher a,int n)int i,j,k;struct teacher temp;for(i=0;in
5、-1;i+)k=i;for(j=i+1;j(ai.jbgz+ai.jt)k=j; if(k!=i) temp=ai; ai=ak; ak=temp;output(a,n);/查找指定姓名的教师信息,若不存在,给出提示信息void searchbyname(struct teacher a,int n) char name20; int flag=0; int i; printf(请输入要查找的教师姓名:n); getchar(); gets(name); for(i=0;in;i+) if(strcmp(name,ai.name)=0) printf(工作号,姓名,出生日期,性别,基本工资,津
6、贴,总工资:n); printf(%s %s %d %d %d %c %f %f %fn,ai.num,ai.name,ai.bir.year,ai.bir.month,ai.bir.day,ai.sex,ai.jbgz,ai.jt,ai.jbgz+ai.jt); flag=1; if(flag=0) printf(查无此人!n);/查找基本工资最高的教师信息void searchbyjbgz(struct teacher a,int n) struct teacher temp; int i; temp=a0; for(i=1;itemp.jbgz) temp=ai; printf(工作号,
7、姓名,出生日期,性别,基本工资,津贴,总工资:n); printf(%s %s %d %d %d %c %f %f %fn,temp.num,temp.name,temp.bir.year,temp.bir.month,temp.bir.day,temp.sex,temp.jbgz,temp.jt,temp.jbgz+temp.jt);/修改指定职工号得教师信息void repeat(struct teacher a,int n) char temp20; int flag=0; int i; printf(请输入要修改的职工号:n); getchar(); gets(temp); for(i
8、=0;in;i+) if(strcmp(temp,ai.num)=0) printf(%s %s %d %d %d %c %f %f %fn,ai.num,ai.name,ai.bir.year,ai.bir.month,ai.bir.day,ai.sex,ai.jbgz,ai.jt,ai.jbgz+ai.jt); printf(请重新输入职工号.姓名.出生日期.性别.基本工资.津贴:n); scanf(%s %s %d %d %d %c %f %f,ai.num,ai.name,&ai.bir.year,&ai.bir.month,&ai.bir.day,&ai.sex,&ai.jbgz,&
9、ai.jt); flag=1; if(flag=0) printf(查无此人!n); printf(修改后的教师信息:n); printf(职工号.姓名.出生日期.性别.基本工资.津贴.总工资:n);for(i=0;in;i+)printf(%s %s %d %d %d %c %f %f %fn,ai.num,ai.name,ai.bir.year,ai.bir.month,ai.bir.day,ai.sex,ai.jbgz,ai.jt,ai.jbgz+ai.jt); void main()int num;struct teacher tea3;while(num=menu() switch(num)case 1: input(tea,3); break;case 2: output(tea,3);break; case 3: sortbyzgz(tea,3);break;case 4: searchbyname(tea,3);break;case 5: searchbyjbgz(tea,3);break; case 6: repeat(tea,3);break;case 7: exit(0);getch(); /按任意键继续 system(cls); /清屏专心-专注-专业
限制150内