ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:179.63KB ,
资源ID:7262369      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7262369.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(毕业生就业统计系统.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

毕业生就业统计系统.docx

1、毕业生就业统计系统题目:毕业生就业统计系统一、课程设计时间201011第2学期第15周,共计1周,20学时。二、课程设计内容用C语言编写软件完成以下任务:1) 录入毕业生的信息(学号,姓名,班级,专业),并保存到一个磁盘文件中;2) 录入每个毕业生就业单位信息(单位名称、性质、地点),签约时间;3) 统计毕业生去向(统计相同单位的学生、统计同一城市的信息、统计同一性质的单位信息);三、课程设计要求程序质量: 贯彻结构化的程序设计思想。 用户界面友好,功能明确,操作方便。用户界面中的菜单至少应包括录入毕业生信息、就业等项。 代码应适当缩进,并给出必要的注释,以增强程序的可读性。课程设计说明书:

2、课程结束后,上交课程设计说明书和源程序。课程设计说明书的内容参见提供的模板。四、指导教师和学生签字指导教师: 学生签名: 五、成绩六、教师评语 目录一、需求分析 1二、设计分析 3三、主要界面截图 9四、技术要点 12五、个人总结 14六、参考文献 15七、源程序 15一、 需求分析经过对程序设计题目的分析可知,整个程序的设计实现大致分为以下几个模块,其中每一个模块对应一个函数,它们的功能分别是:读取文件信息函数,录入学生信息函数,查询函数(包括对学生工作单位、城市、单位性质的查询)。1、录入学生信息函数 主要实现程序最初运行时学生信息的录入以及其后的运行中学生信息的追加功能;2、查询函数 实

3、现的功能是按照要求对学生的信息记录进行查询、调用;3、查询相同单位学生信息函数 按照题目的具体要求实现的是对相同单位学生的信息的调用、查询;4、查询相同城市学生信息函数 按照题目的具体要求实现的是对相同城市学生的信息的调用、查询;5、查询相同性质单位信息函数 按照题目的具体要求实现的是对相同性质单位的信息的调用、查询;6、退出函数 实现的是在程序的一次运行当中循环执行所有功能时根据需要终止程序的执行的功能。每一个学生记录都包含学号、姓名、班级、专业,而每一个学生的单位信息包含单位名称、地点、性质还有签约时间,在程序当中,将学生记录类型定义为结构体类型,添加以及追加的学生信息直接写入D盘的stu

4、dent.dat文件中,其它函数每次对学生记录的访问,其数据来源都是student.dat文件,这样做不但可以保证学生数据的一致性,而且可以对学生数据进行永久保存,保证每次运行程序都可以采用原来的数据。二、设计分析1、 程序总体结构图(1)读取学生信息函数reads() Y N N Y (2)录入学生信息和单位信息函数add 读写方式打开D盘studeng.txt文件不成功? 真 假写方式打开文件不成功输入追加学生数量n 从文件读出学生数量记录数量赋给k输出文件打开 失败 输入学生数量n文件位置指针重新回到开头将n写入文件 返回学生记录总数 n+k写入文件循环变量i=1文件位置指针定位在结尾f

5、seek当i=n时循环变量i=1输入信息并写入文件i+当i=n时 输入学生信息和单位信息并写入文件i+关闭文件(3)调用相同单位的学生信息danwei循环变量i=0从文件中读取学生数据 输出“请输入待查询的单位名称,按回车确认”当i=nstrcmp(danwei,stui.danwei)=0 假 真 输出学生学生信息 (4)调用相同城市的学生信息chengshi循环变量i=0从文件中读取学生数据输出“请输入待查询的城市名称,按回车确认”当i=n strcmp(chengshi,stui.chengshi)=0假 真 输出学生学生信息 (5)调用相同单位性质的学生信息xingzhi循环变量i=0

6、从文件中读取学生数据输出“请输入待查询的性质名称,按回车确认”当i=n strcmp(xingzhi,stui.xingzhi)=0假 真输出学生学生信息三、主要界面截图图1 程序界面图2 录入学生信息图3 按单位查询图4 按城市查询图5 按单位性质查询图6 退出系统四、技术要点本程序主要由六个自定义函数和一个主函数组成,其中主函数以菜单的形式调用其它函数来实现要求的所有功能。在这些函数当中,录入信息函数、查询信息函数程序中较为核心的部分,下面分别进行说明。1、录入信息函数 添加信息分为两种情况,其一是在学生文件(student.txt)不存在的情况下,首先由程序创建一个新文件,并将录入的学生

7、信息写入该文件当中;其二是在学生文件(student.txt)已经存在的情况下,此时文件要以读写方式或追加的方式打开,这样才可以保证以前已经存在的数据不丢失。2、 查询相同单位学生信息函数该函数的核心内容是输入单位名称实现对同一单位学生信息的调用。该函数执行时,首先调用reads函数将文件中的学生信息读入数组当中,并由用户输入待查询学生的就业单位,而后按照该单位进行查找,如果文件中存在该学生的数据,就按照调用学生函数的方法调用,否则不输出任何信息。对学生信息的具体调用是在结构体数组中实现的,当学生的信息被找到后,依次在数组的学生记录中寻找相同的信息,这些操作完成后,要调用的学生信息就被调用出来

8、了,也就实现了查询的作用。3、查询相同城市学生信息函数该函数的核心内容是输入城市名称实现对学生信息的调用。该函数执行时,首先调用reads函数将文件中的学生信息读入数组当中,并由用户输入待查询学生的城市,而后按照该城市进行查找,如果文件中存在该学生的数据,就按照调用学生函数的方法调用,否则不输出任何信息。对学生信息的具体调用是在结构体数组中实现的,当学生的信息被找到后,依次在数组的学生记录中寻找相同元素的信息,这些操作完成后,要调用的学生信息就被调用出来了,也就实现了查询的目的。4、查询相同单位性质学生信息函数该函数的核心内容是输入性质实现对学生信息的调用。该函数执行时,首先调用reads函数

9、将文件中的学生信息读入数组当中,并由用户输入待查询单位的性质,而后按照该单位性质进行查找,如果文件中存在该学生的数据,就按照调用学生函数的方法调用,否则不输出任何信息。对学生信息的具体调用是在结构体数组中实现的,当学生的信息被找到后,依次在数组的学生记录中寻找相同单位性质的信息,这些操作完成后,要调用的学生信息就被调用出来,也就实现了查询。五、个人总结之前在大一就学过了C语言,但是学的不是很好,对有些概念一点都不熟悉。但是,在这一周的课设时间里,通过自己查找资料和与同学们进行的探讨,使我对C语言的知识有了更细致的理解,并掌握了一定的编程方法,也使我的C语言编程能力有很大的提高。虽然我们学的不是

10、计算机专业,但对我们学工科的学生来说C语言程序设计确实是一门很有用的学科,与我们的生活学习有紧密的联系。这次课设让我对C语言产生了更深厚的兴趣,也激励我以后对它更深入的学习。六、参考文献1 谭浩强C程序设计北京:清华大学出版社,20052 刘成等C语言程序设计实验指导与习题集北京:中国铁道出版社,2006七、源程序#include#include#include#include#define N 20struct studentchar num20; char name10; char banji10; char zhuanye10; char danwei10; char chengshi1

11、0; char xingzhi10; char shijian10;stuN;int n;void menu() printf(*); printf(t1 请录入录入学生信息tt 2 按单位名称统计n); printf(t3 按输入城市名称统计tt 4 按输入单位性质统计n); printf(t5 完全退出n); printf(*n); void reads(struct student stuN,int *n) FILE *fp; int i=0; if(fp=fopen(d:student.txt,r)=NULL)/*在指定目录下创建或打开文件*/ printf(文件打开失败!n ); r

12、eturn; else for(i=0;!feof(fp);i+) fscanf(fp,%s%s%s%s%s%s%s%s,stui.num,stui.name,stui.banji,stui.zhuanye,stui.danwei,stui.chengshi,stui.xingzhi,stui.shijian); *n=i; fclose(fp);void add()/*录入学生信息函数*/FILE *fp; int n,i; struct student stu; if(fp=fopen(d:student.txt,r+)!=NULL)/*在指定目录下创建或打开文件*/ printf(请输入

13、添加学生数量,按回车键确认:); scanf(%d,&n); fseek(fp,0L,2); for(i=1;i=n;i+) printf(n请输入第%d个学生的学号、姓名、班级、专业,用空格分开,并按回车键确认:n,i); scanf(%s%s%s%s,stu.num,stu.name,stu.banji,stu.zhuanye); printf(n请输入第%d个学生的单位名称、地点、性质、签约时间,用空格分开,并按回车键确认:n,i); scanf(%s%s%s%s,stu.danwei,stu.chengshi,stu.xingzhi,stu.shijian); fprintf(fp,n

14、%s %s %s %s %s %s %s %s,stu.num,stu.name,stu.banji,stu.zhuanye,stu.danwei,stu.chengshi,stu.xingzhi,stu.shijian); else if(fp=fopen(d:student.txt,w)!=NULL) /*在指定目录下创建或打开文件*/ printf(请输入添加学生数量,按回车键确认:); scanf(%d,&n); for(i=1;i=n;i+) printf(n请输入第%d个学生的学号、姓名、班级、专业,用空格分开,并按回车键确认:n,i); scanf(%s%s%s%s,stu.nu

15、m,stu.name,stu.banji,stu.zhuanye); printf(n请输入第%d个学生的单位名称、地点、性质、签约时间,用空格分开,并按回车键确认:n,i); scanf(%s%s%s%s,stu.danwei,stu.chengshi,stu.xingzhi,stu.shijian); fprintf(fp,n%s %s %s %s %s %s %s %s,stu.num,stu.name,stu.banji,stu.zhuanye,stu.danwei,stu.chengshi,stu.xingzhi,stu.shijian); fclose(fp);void danwe

16、i()/*学生同一单位信息查询*/ struct student stuN; char danwei20; int i; reads(stu,&n); printf(n请输入单位名称:n); scanf(%s,danwei); for(i=0;in;i+) if(strcmp(danwei,stui.danwei)=0) if(strcmp(danwei,stui.danwei)!=0) printf(没有找到该学生n); return; elseprintf(n%5s%5s%5s%5sn,stui.num,stui.name,stui.banji,stui.zhuanye);void che

17、ngshi()/*学生同一城市信息查询*/ struct student stuN; char chengshi20; int i; reads(stu,&n); printf(n请输入城市名称:n); scanf(%s,chengshi); for(i=0;in;i+) if(strcmp(chengshi,stui.chengshi)=0) if(strcmp(chengshi,stui.chengshi)!=0) printf(没有找到该学生信息n); return; else printf(n%5s%5s%5s%5sn,stui.num,stui.name,stui.banji,stu

18、i.zhuanye);/*输出信息*/void xingzhi()/*学生就业单位同一性质的查询*/ struct student stuN; char xingzhi20; int i; reads(stu,&n); printf(n请输入单位性质:n); scanf(%s,xingzhi); for(i=0;in;i+) if(strcmp(xingzhi,stui.xingzhi)=0) if(strcmp(xingzhi,stui.xingzhi)!=0) printf(没有找到该学生信息n); return; elseprintf(n%5s%5s%5s%5sn,stui.num,st

19、ui.name,stui.banji,stui.zhuanye);void menu();void read(struct student stuN,int *n);void add();void danwei();void chengshi();void xingzhi();void main() int m; while(1) printf(tttt学生毕业信息管理n); menu(); printf(n请选择操作序号,按回车键确认:); scanf(%d,&m); switch(m) case 1: add();break; case 2: danwei();break; case 3: chengshi();break; case 4: xingzhi();break; case 5: exit(0); default: printf(输入错误,请输入存在的序号!n );

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1