资源预览内容
第1页 / 共21页
第2页 / 共21页
第3页 / 共21页
第4页 / 共21页
第5页 / 共21页
第6页 / 共21页
第7页 / 共21页
第8页 / 共21页
第9页 / 共21页
第10页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
中国地质大学(武汉)课程设计报告题 目 c语言程序设计 姓 名 学 号 专 业 统计学 所在院系 经济管理学院 指导老师 江俊君 日 期 2016/6/11 目 录目 录31课程论文题目42程序设计思路53功能模块图64数据结构设计75算法设计86程序代码97程序运行结果108编程中遇到的困难及解决方法119总结心得及良好建议1210致谢131课程论文题目职工信息管理系统内容:要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。 功能:实现简单的职工工资信息管理,职工工资的基本信息包括编号、姓名、基本工资、奖金、工资总额等 1. 系统以菜单方式工作。2. 职工信息录入功能(职工信息用文件保存)。3. 职工信息浏览功能 。4.职工信息查询功能。查询方式。(1)按学历查询。(2)按工号查询。2程序设计思路(1)需求分析系统要以菜单方式工作,因而根据题目要求,提供键盘式选择菜单实现功能选择,职工信息采用文件保存,所以应提供文件的输入、输出等操作;在程序中需要浏览职工的信息,应提供显示、查找、等操作;要实现职工信息的查询,则要提供查找功能(包括按学历查询和按工号查询两种查询方式);要实现职工信息的删除、修改,则要提供文件记录的删除 、修改功能。(2)总体设计根据上面的需求分析,可以将这个系统设计分为以下模块:职工信息输入模块、职工信息浏览模块、职工信息查询模块、职工信息删除与修改模块(3)数据信息建立职工信息结构体,结构体成员包括工号、姓名、性别、年龄、学历、工资、住址和电话。Struct employeechar num20;char name8;char sex10;char age10;char xueli30;char wanges10;char tel15;char addr50;emN3功能模块图录入模块菜单浏览模块学历查询工号查询查询模块4. 数据结构设计建立职工信息结构体,结构体成员包括工号、姓名、性别、年龄、学历、工资、住址和电话。Struct employeechar num20;/工号char name30;/姓名char sex10;/性别char age10;/年龄char xueli30;/学历char wanges10;/工资char tel15;/电话char addr50;住址emN5算法设计1.输入模块:输入职工的工号、姓名以及其它的一些职工的相关信息,通过自己定义的void append()函数来实现。2.浏览模块:浏览所有职工的相关信息,通过自己定义的void display()函数来实现。 3. 按职工号查询模块:可以按职工号来查询职工的相关信息,通过自己定义的void search_num()函数来实现。 8.按职工的的学历查询模块:可以按职工的学历来查询职工的相关信息,通过自己定义的void search_xuelil函数来实现。4.退出模块:退出职工信息管理系统,通过头文件windows.h中的exit(0)函数来实现。 1. 录入模块void append()int i,n;FILE*fp;fp=fopen(employee_list,wb);/俩一起定义fpprintf(请输入职工个数 n);scanf(%d,&n);for (i=0;in;i+) printf(请输入职工号: );scanf(%d,&emi.num);printf(请输入姓名: );scanf(%s,emi.name);getchar(); printf(请输入性别(f-女 m-男): );scanf(%s,&emi.sex);printf(请输入年龄: );scanf(%s,&emi.age);printf(请输入学历: );scanf(%s,emi.xueli);printf(请输入工资: );scanf(%s,&emi.wanges);printf(请输入住址: );scanf(%s,emi.addr);printf(请输入电话: );scanf(%s,emi.tel);printf(n); save(n);2.浏览模块void display() int i;int m=load(); printf( 职工号t姓名tt性别tt年龄n);printf( 学历tt工资tt住址tt电话n);for(i=0;im;i+)printf(%dt,emi.num);printf(%st,emi.name);printf(%st,emi.sex);printf(%st,emi.age);printf(%st,emi.xueli);printf(%st,emi.wanges);printf(%st,emi.addr);printf(%st,emi.tel);printf(n);2. 查询模块void search()int a;printf(n按职工号查询请按1n按学历查询请按2n返回主菜单请按3n);scanf(%d,&a); switch(a) case 1:printf(按职工号查询n);search_num();break; case 2:printf(按学历查询n);search_xueli();break; case 3:main();break; default: printf(您输入有误,请重新选择!n); break; (1)按工号查询void search_num()int num,i,t; int m=load(); /使m=文件输入的个数printf(请输入要查找的职工号:n); scanf(%d,&num); for(i=0;im;i+) if(num=emi.num) printf(n已找到此人,其记录为:n); printf( 职工号t姓名tt性别tt年龄n);printf( 学历tt工资tt住址tt电话n); printf(%dt,emi.num);printf(%st,emi.name);printf(%st,emi.sex);printf(%st,emi.age);printf(%st,emi.xueli);printf(%st,emi.wanges);printf(%st,emi.addr);printf(%st,emi.tel);printf(n);break; if(i=m) /因为i=0,i=m就超了printf(n对不起,查无此人n); printf(n); printf(返回查询函数请按1,继续查询职工号请按2n); scanf(%d,&t); switch(t) case 1:search();break; case 2:search_num(); break; default:break; (2)按学历查找void search_xueli() char xueli30;int i,t; int m=load(); printf(请输入要查找的学历:n); scanf(%s,xueli);for(i=0;im;i+) if(strcmp(emi.xueli,xueli)=0) printf(n已找到,其记录为:n); printf( 职工号t姓名tt性别tt年龄n);printf( 学历tt工资tt住址tt电话n);printf(%dt,emi.num);printf(%st,emi.name);printf(%st,emi.sex);printf(%st,emi.age);printf(%st,emi.xueli);printf(%st,emi.wanges);printf(%st,emi.addr);printf(%st,emi.tel);printf(n);if(i=m) printf(n对不起,查无此人n); printf(n); printf(返回查询函数请按1,继续查询学历请按2n); scanf(%d,&t); switch(t) case 1:search();break; case 2:search_xueli();break; default :break; 6程序代码#include #include /包括exit(0),无需定义#include #include #define N 100/可以随便改人数void append(); /录入void display(); /浏览void search(); /查询void search_num(); /工号void search_xueli();/学历void save(int); /声明一个形参 struct employee/定义结构体数组 全局变量
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号