1、 1 C 语言课程设计 综合实习报告 人事管理系统人事管理系统 【设计目的设计目的】 某高校主要人员有:在职人员(行政人员、教师、一般员工) 、退休人员及临时工。 现在需要储存这些人员的人事档案信息,内容包括编号、姓名、年龄、职务、职称、政治面 貌、 最高学历、任职时间、来院时间、人员类别。其中,人员编号唯一,不能重复。 设计人事管理系统满足以下功能: 添加删除功能:能根据学院人事的变动情况,添加删除记录。 (1) 查询功能:能根据编号和姓名进行查询。 (2) 编辑功能(高级) :根据查询对相应的记录进行修改并记录。 (3) 统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人
2、数, 高学历高职称人数) ,统计要求同时显示被统计着的信息。 (4) (5) 排序功能:按照年龄、来院时间进行排序。 (5) (6) 保存功能:能对输入的数据进行相应的存储。 【设计思路设计思路】 根据题目要求, 应当把图书信息用结构体形式输入, 再定义一个全局变量和文件指针进行整 个程序的运行, 然后把图书信息送到文件中去, 所以应该提供下个结构体和文件的输入等操 作:在程序中需要实现图书信息录入,浏览,查询,删除和修改等功能的操作,所以需要建 立相应的模块来实现:另外还需提供选择菜单实现功能,在运行时达到所要求的目的。 2 【总体设计总体设计】 图书管理系统 借阅图书 查阅图书 管理系统
3、还书 退出系统 3 【分块设计分块设计】 4 图 13 输入模块流程图 开始 输入数字 1,进入查阅图书 输 入 数 字 1 或 2 调 用 findbook() 和 findbook1()函数 输入 1,按书名 查询 输入 2,按作者查 询 输入 0 返回主菜单 输入数字 1 或 2 5 图 14 借阅函数流程图 开始 输入数字 2,进入借阅系统 调用 lendbook()函数 结束 6 图 15 修改、删除、追加模块流程图 开始 输入 3,进入管理系统 输入用户要追加的增加图书、删除图书、学生管理系统、书籍统计 调用 carcount() addbook() bookcount() del
4、book()函数 录保护追加记录 结束 7 8 【程序程序源代码源代码】 #include #include #include #include #include #define STACK_INIT_SIZE 10 #define OK 1 #define TRUE 1 #define FALSE 0 #define ERROR 0 struct student int carnum; char lendbook10; student1000; struct book int booknum; char bookname10; char bookcreat10; int turefalse;
5、 book1000; struct car int carnum; char studentname10; 9 int studentclass; car100; huanbook() FILE *fp,*fp2; int i,n; int carnum; char lendbook10; printf(“请你输入你的卡号n“); scanf(“%d“, fp=fopen(“car.txt“,“r“); for(i=0;fread(i+) if(cari.carnum=carnum) n=i; fclose(fp); printf(“请输入你要还的书的名字n“); scanf(“%s“,len
6、dbook); fp=fopen(“record.txt“,“r“); for(i=0;fread(i+) if(strcmp(studenti.lendbook,lendbook)=0) fclose(fp); fp=fopen(“record.txt“,“r“); fp2=fopen(“bookl.txt“,“w“); for(i=0;fread(i+) 10 if(strcmp(studenti.lendbook,lendbook)=0) continue; fwrite( fclose(fp); fclose(fp2); fp=fopen(“record.txt“,“w“); fp2=fopen(“bookl.txt“,“r“); for(i=0;fread(i+) fwrite( fclose(fp); fc