1、输入教师号,读出并显示该教师信息,输入新数据,将改后信息写入文件(4) 教师数据查询:输入教师号或其他信息,即读出所有数据信息,并显示出来。 (5) 教师综合信息输出输出教师信息到屏幕。1. 课程设计目的和要求A巩固和加强c语言程序设计课程的理论知识。 B掌握c语言的基本概念,语法,语义和数据类型的使用特点。C掌握c语言程序设计的方法及编程技巧,能正确使用c语言编写程序。 D进一步理解和运用结构化程序设计的思想和放法。 E使学生掌握调试程序的基本方法及上机操作方法。F通过查询手册和文献资料,培养学生独立分析问题和解决问题的能力。 G初步掌握开发一个小型实用系统的基本方法。 H培养学生的创新能力
2、和创新思维。I培养学生良好的程序设计风格。进一步理解和运用2.课程设计题目及容教师名,性别,单位名称,家庭住址,联系,基本工资,津贴,生活补贴,应发工资,费,水电费,房租,所得税,卫生费,公积金,合计扣款,实发工资。实发工资=应发工资合计扣款。1教师信息处理 J输入教师信息K插入(修改)教师信息 L删除教师信息; M浏览教师信息;(提示:) 2教师数据处理;A. 按教师号录入教师基本工资,津贴,生活补贴,费,水电费,房租,所得税,卫生费,公积金等基本信息;B. 教师实发工资、应发公资、合计扣款; C. 教师数据管理;输入教师号,读出并显示该教师信息,输入新数据,将改后信息写入文件。) D. 教
3、师数据查询;输入教师好或其他信息,即读出所有数据信息,并显示出来。) E. 教师综合信息输出;(提示;一、需求分析教师信息处理A输入教师信息B插入修改教师信息 C删除教师信息 D浏览教师信息教师数据处理A按教师号录入教师基本工资、津贴、生活补贴、费、水电费、房租、所得税、卫生费、公积金等基本数据。B教师实发工资,应发工资,合计扣款计算。 C教师数据管理 D教师数据查询 E教师综合信息输出二总体设计 4总体设计建立动态链表。删除结点插入结点源程序#include #includeconio.h#define LEN sizeof(struct teacher) struct teacher *c
4、reat(); struct teacher intnum; char name10; char sex8; char unit10; char address10; longtelnum; float salary_1; float allowance; floatlife_allow; float salary_2; floattel_fee; float tax; floathealth_fee; floatwater_fee; float rent; float grant; floattotal_fee; floatactual_salary; struct teacher *nex
5、t; ;int n;struct teacher *head; FILE *fp;struct teacher *creat(void) struct teacher *p1,*p2; n=0; p1=p2=(struct teacher *)malloc(LEN); printf(教师号:);scanf(%d,&p1-num);fflush(stdin);教师: gets(p1-name);教师性别:sex);printf(单位名称:unit);家庭地址:address);:%ldtelnum);基本工资:%fsalary_1);津贴:allowance);生活补贴:life_allow);
6、费:tel_fee);个人所得税:tax);房租:rent);公积金:grant);水电费:water_fee);卫生费:health_fee);salary_2=p1-salary_1+p1-allowance+p1-life_allow;total_fee=p1-tel_fee+p1-water_fee+p1-rent+p1-tax+p1-health_fee+p1-grant; p1-actual_salary=p1-salary_2-p1-total_fee; head=NULL; while(p1-num!=0) n=n+1; if(n=1)head=p1; else p2-next
7、=p1; p2=p1; p1=(struct teacher*)malloc(LEN); p2-next=NULL; return(head); void print(struct teacher *head) struct teacher *p;nNow,These %d records are:n,n); p=head; if(head!=NULL) do printf(%5dtt,p-%-10sn%-6stt%-10st%8ldn%5.0ftt%5.0fn%5.0ftt费:应发工资:salary_2);合计扣款:total_fee);实发工资:%5.0fnnnactual_salary)
8、; p=p-next; while(p!=NULL);struct teacher *insert(struct teacher*head,struct teacher *teach) struct teacher *p0,*p1,*p2; p1=head; p0=teach; if(head=NULL) head=p0;p0- else while(p0-numnum)&(p1-next!=NULL) p2=p1;p1=p1- if(p0-num else p1- n=n+1;struct teacher *del(struct teacher *head,int number) struc
9、t teacher *p1,*p2; if(head=NULL)printf(nlist nullnreturn(head); p1=head; while(number!=p1-num&=NULL) p2=p1; if(number=p1-num) if(p1=head)head=p1-next=p1-删除:%dn,number); n=n-1; else printf(%ld is not foundnvoid save() int i;struct teacher *p1;if(fp=fopen(teacher_list,wb)=NULL) printf(cannot open file
10、n return;for(i=0;ifclose(fp);void load() struct teacher *p1,*p2;rbp1=p2=(struct teacher *)malloc(LEN); head=p1; do if(fread(p1,sizeof(struct teacher),1,fp)!=1) printf(file errorn goto end;if(p1-p1=(struct teacher *)malloc(LEN); p2- else break; while(1); end: fclose(fp);void query(struct teacher *p)
11、int no;please input num: scanf(no);while(p-=no) p=p-void edit(struct teacher *p) int a;a);%dnn,a); for(;) if(p-num=a) printf(请输入新数据:p-gets(p-工作单位:salary_2=p-salary_1+p-allowance+p-total_fee=p-tel_fee+p-water_fee+p-rent+p-tax+p-health_fee+p- p-actual_salary=p-salary_2-p- break;p=p- void welcome() ttt
12、+-+nttt| |nttt| 欢迎使用教师工资管理系统 |nnnchar mainmenu() char choice;n温馨提示:为保证您的操作得到保存,请按正常顺序退出系统_nttt-nttt| 教师工资管理系统 |nttt| 1-输入教师信息 |nttt| 2-插入教师信息 |nttt| 3-删除教师信息 |nttt| 4-浏览教师信息 |nttt| 5-录入教师信息 |nttt| 6-查询教师信息 |nttt| 7-修改教师信息 |nttt| 8-加载教师信息 |nttt| 0-退出系统 |nttt|*|n请输入您的选择: do fflush(stdin);%cchoice); while(choice8 return(choice);void main()struct teacher *teach; intdel_num; char choice; while(1) welcome(); choice=mainmenu(); switch(choice) case system(cls exit(0); case 1input records: head
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1