毕业生就业统计系统-C语言课程设计
就业系统课程设计

就业系统课程设计一、课程目标知识目标:1. 让学生理解就业系统的基本概念、功能和组成部分;2. 使学生掌握我国就业市场的现状、发展趋势及就业政策;3. 帮助学生了解职业生涯规划的基本理论和方法。
技能目标:1. 培养学生运用信息技术查找和分析就业信息的能力;2. 提高学生撰写简历、求职信以及进行面试的实战技巧;3. 培养学生进行自我评估、职业定位和规划的能力。
情感态度价值观目标:1. 培养学生树立正确的就业观,明确个人职业发展与社会需求的紧密联系;2. 增强学生的团队合作意识,提高沟通协调能力;3. 培养学生具备积极向上的职业心态,面对职业挑战充满信心。
课程性质:本课程为实践性较强的学科,旨在帮助学生掌握就业相关知识,提高就业竞争力。
学生特点:学生处于高年级阶段,具备一定的专业知识,关注就业前景,对实际操作和案例分析有较高兴趣。
教学要求:结合课本内容,注重理论与实践相结合,以案例分析、小组讨论、实战演练等形式,提高学生的参与度和实际操作能力。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容1. 就业系统概述- 了解就业系统的定义、功能和作用;- 掌握就业系统的基本组成部分及运行机制。
2. 就业市场分析- 研究我国就业市场的现状、发展趋势及就业政策;- 分析行业需求、岗位要求及职业发展趋势。
3. 职业生涯规划- 学习职业生涯规划的基本理论和方法;- 进行个人兴趣、价值观、能力等方面的自我评估;- 掌握职业定位和规划的基本技巧。
4. 就业信息收集与分析- 学习利用信息技术收集就业信息;- 掌握分析就业信息的方法和技巧;- 了解求职渠道和策略。
5. 求职技巧- 学习撰写简历、求职信的要点和技巧;- 掌握面试的类型、流程和应对策略;- 提高自我展示、沟通协调和问题解决能力。
6. 实战演练- 进行模拟面试、简历点评等实践活动;- 通过案例分析、小组讨论等形式,巩固所学知识;- 培养团队合作精神和解决问题的实际操作能力。
C语言程序设计课程设计报告

C语言程序设计课程设计实验报告一、设计名称:学生成绩治理查询系统实验项目性质:综合性所涉及课程:C语言程序设计打算学时:实验学时12二、设计目的:1.通过本课程设计,培育上机动手能力,使学生巩固《C语言程序设计》课程学习的内容,把握工程软件设计的大体方式,强化上机动手能力,闯过编程关;2.为后续各门运算机课程的学习打下坚实基础。
3.明白得程序设计的思路,把握结构化程序设计的方式,综合利用C语言进行程序编写,巩固常常利用的C语言概念,如数组、指针、结构体、链表、文件操作等,注意良好的程序设计风格的培育。
提高编写程序解决实际问题的能力、调试程序的技术。
三、设计环境(软件、硬件及条件)1.硬件:PC机2.软件:Turbo C++四、设计说明:程序系统的结构:用一系列图表列出本程序系统内的每一个程序(包括每一个模块和子程序)的名称、标识符和它们之间的层次结构关系。
主程序:新建:输入记录(遇#号时停止输入)。
插入:在指定位置插入记录。
显示:列出所有记录。
查询:一、按学号查询;二、按名字排序。
删除:一、按学号删除;二、按名字删除;3、删除所有记录。
排序:一、按语文成绩排序;二、按英语成绩排序;3、按数学成绩排序。
保留:保留为任意名字,系统自动加后缀名为.txt。
读取:读取程序目录下的后缀名为.txt的文件。
退出:退出程序。
五、各功能模块的具体实现,用图表表示。
输入记录显示开始:输入学号输入的学号是否为#Y N 结束,返回主菜单输入记录循环输入结束开始p=hp!=NULL输出学生信息;p=p->next结束按学号(姓名)查询信息Y N读取文件六、各模块(函数)的功能介绍,数据结构设计描述,参数说明等。
STUDENT *init(); /*初始化链表*/STUDENT *create(); /*新建链表*/STUDENT *del_no(STUDENT *h);/*按学号删除信息*/STUDENT *del_name(STUDENT *h); /*按姓名删除信息*/void print(STUDENT *h); /*显示信息函数*/void search_no(STUDENT *h); /*按学号搜索*/void search_name(STUDENT *h); /*按姓名搜索*/STUDENT *insert(STUDENT *h); /*插入信息函数*/void sort(STUDENT *h);/* 排序函数*/void save(STUDENT *h);/*保留数据到文件*/void load(STUDENT *h); /*从文件读取数据*/int menu_main(); /*菜单函数*/void inputs(char *prompt,char *s,int count);/*输出信息*/七、程序代码:Enter records\n");printf(" 2. Add records\n");printf(" 3. List records\n");printf(" 4. Search records\n");printf(" 5. Delete records\n");printf(" 6. Sort records\n");printf(" 9. Quit\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~9):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>9); /*选择项不在1~9之间重输*/return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Search records on number\n");printf(" 2. Search records on name\n");printf(" 3. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~3):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>3);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Chinese\n");printf(" 2. English\n");printf(" 3. Math\n");printf(" 4. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~4):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>4);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Delete records on number\n");printf(" 2. Delete records on name\n");printf(" 3. Delete all records\n");printf(" 4. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~4):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>4);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}.");/*提示*/getch(); /*读入任意字符*/}.\n");getch(); /*读入任意字符*/if(p==h)h=p->next;elseq->next=p->next;free(p); /*释放*/printf("\n%s had been deleted\n",s); }printf("\nPress any key to continue..."); getch(); /*读入任意字符*/return h;}.\n");getch();if(p==h)h=p->next;else q->next=p->next;free(p); /*释放*/printf("\n%s had been deleted\n",s);}printf("\nPress any key to continue...");getch(); /*读入任意字符*/return h;}.");getch(); /*读入任意字符*/}.");getch(); /*读入任意字符*/}xt"};STUDENT *p;FILE *fp; /*指向文件的指针*/printf("\n Input the filename:");scanf("%s",outfile);strcat(outfile,last);if((fp=fopen(outfile,"wb"))==NULL) /*打开文件,并判定打开是不是正常*/ {printf("\nCannot open file!\n");exit(1); /*退出*/}p=h;while(p!=NULL){if(fwrite(p,sizeof(STUDENT)-sizeof(p->next),1,fp)!=1){printf("Error!\n");exit(1);} /*写入*/p=p->next;}fclose(fp); /*关闭文件*/printf("\n------OK------\n");printf("Press any key to continue...");getch(); /*读入任意字符*/}xt"};STUDENT *p,*a1=NULL,*a2=NULL;FILE *fp;/*概念文件指针*/printf("\n Input the filename:");scanf("%s",outfile);strcat(outfile,last);if((fp=fopen(outfile,"rb"))==NULL)/*打开文件*/{printf("\nCannot open file!\n");exit(1); /*退出*/}p=h;a1=a2=(STUDENT *)malloc(LEN);fread(a1,sizeof(STUDENT)-sizeof(a1->next),1,fp); while(!feof(fp)){n++;if(n==1)h=a1;else a2->next=a1;a1=(STUDENT *)malloc(LEN);fread(a1,sizeof(STUDENT)-sizeof(a1->next),1,fp);}a2->next=NULL;printf("\n------OK------\n");printf("Press any key to continue...");getch(p); /*读入任意字符*/}///////////////////////////////////////////void sort(STUDENT *h) /*排序函数*/{int i=0,j;STUDENT *p,*q,*t,*h1,*z;clrscr(); /*清屏*/printf("Enter you choice :\n");scanf("%d",&j);z=h;h1=h->next;h->next=NULL;while(h1!=NULL){t=h1;h1=h1->next;q=h;while(t->score[--j]<p->score[--j]&&p!=NULL){q=p;p=p->next;}if(p==q){t->next=p;h=t;}else{t->next=p;q->next=t;}}p=h;while(p!=NULL){i++;p=p->next;}h=z;printf("------OK------\n");}//////////////////////////////////////////////////九、体会、总结本课程设计完成了设计一个学生成绩治理系统,学生的学习成绩进行治理,具有查询和检索功能,而且能够对指定文件操作。
毕业生就业管理系统课程设计

毕业生就业管理系统课程设计集团标准化工作小组 [Q8QX9QT-X8QQB8Q8-NQ8QJ8-M8QMN]成都航空职业技术学院课程设计毕业生就业信息管理系统题目教学院计算机学院专业计算机科学与技术2012年11月29日班级611321姓名周金龙指导教师张强课程设计任务书2010~2011学年第2学期学生姓名:周金龙专业班级:611321指导教师:张强工作部门:华迪公司一、课程设计题目毕业生就业信息管理系统主要研究及实现以下功能:(1)基本信息管理:可以对毕业学生基本信息的添加、修改、删除,并支持学生姓名和学号的查询。
(2)院系信息管理:对院系信息进行添加、修改、删除和查看。
此功能为学生档案的分类管理提供依据。
(3)单位信息管理:对用人单位的信息进行添加、修改、删除和查询等操作。
(4)就业信息管理:可以对学生的就业资料进行添加、修改、删除和查看等操作。
(5)招聘信息管理:可以对来校进行招聘的信息进行添加、修改、删除和查询等操作。
(6)系统设置:对操作员信息进行管理。
二、课程设计内容(含技术指标)1.问题分析和任务定义:根据设计题目的要求,充分地分析和理解问题,明确问题要求做什么,限制条件是什么;2.逻辑设计:确定数据库结构,及各个主要模块的功能,并明确模块之间的调用关系;3.详细设计:设计数据库及操作界面,并给出每个功能模块的实现算法;4.程序编码:把详细设计的结果进一步求精为程序设计语言程序,同时加入一些注解和断言,使程序中逻辑概念清楚;5.程序调试与测试:采用自底向上,分模块进行调试,调试正确后,认真整理源程序及其注释,形成格式和风格良好的源程序清单和结果;6.结果分析:程序运行结果包括正确的输入及其输出结果,含有错误的输入及其输出结果。
7.编写课程设计报告。
三、进度安排1.软件功能分析与设计;2.数据库及操作界面设计;3.具体代码实现及调试;4.撰写课程设计论文。
四、基本要求1.学生能够按照老师的要求正确的设计数据库;2.学生在老师的指导下,能够设计出相应功能模块;3.学生在阅读参考资料后,能够编写出相应的代码,具备软件开发的能力。
《C语言程序设计课设》课程设计指导书

《C语言程序设计课设》课程设计指导书一、课程设计的目的(1)加深对讲授内容的理解,尤其是一些语法规则。
(2)熟悉C语言程序设计的结构化编程的思想,掌握数据的基本类型、自定义类型、函数、文件和指针等知识,能运用这些知识进行综合编程,熟练应用。
(3)能够综合运用所学知识,编程解决实际问题。
(4)培养团队分工合作的意识,最终使学生提高编程技能和解决实际问题的能力。
二、课程设计基本要求2.1.组织管理1.由院、系指派经验丰富的专业教师担任指导教师。
2.课程设计实行课程负责人与指导教师共同负责制。
3.课程负责人主要进行课设的命题、指导教师的考核、技术把关和全面管理。
4.指导教师全面负责所承担班级的课程设计指导、管理和考核评定工作。
2.2设计要求1.自选题目、小组管理、团队合作、小组评测。
2.模块化程序设计。
3.锯齿型书写格式。
4.必须上机调试通过。
三、选题要求:每个题目限定1-2人,每人必须负责一部分功能,并独立完成,推举出一个组长,负责任务分工,汇总到班长处,然后交给指导教师。
四、设计报告格式及要求:1、题目2、设计目的3、总体设计(程序设计组成框图、流程图)4、详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)5、运行结果及分析6、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施7、课程设计心得及体会8、源程序清单和执行结果:清单中应有足够的注释五、课程设计成绩评定5.1基本要求:(1)每个人必须有程序运行结果;(2)每个人必须交《C语言课程设计》报告5.2、成绩评定和打分标准由指导教师对学生在课程设计期间的表现,所完成的设计报告的质量、设计结果的验收和答辩情况进行综合考核。
具体评定标准如下:(1)上机考勤:注重平时上机考勤与遵守纪律情况20%(2)结果验收:学生能运行、讲述或调试自己的程序,回答教师提问,每个人必须有程序运行结果40%(3)小组自评成绩结果10%(4)设计报告:每个人必须交《C语言课程设计》报告和《C语言课程设计》日志30%以上四项缺一不可,否则不能到得相应学分依据上述考核内容,最后采用优(>90分)、良(80~89分)、中(70~79分)及格(60~69分)、不及格(<60分)五级记分制评定学生课程设计成绩。
c语言毕业课程设计

c语言毕业课程设计一、教学目标本课程的教学目标是使学生掌握C语言编程的基本概念、原理和方法,培养学生运用C语言解决实际问题的能力。
具体来说,知识目标包括:掌握C语言的基本语法、数据类型、运算符、控制结构、函数等;技能目标包括:能够使用C语言编写简单的程序,具备一定的调试和优化程序的能力;情感态度价值观目标包括:培养学生对计算机科学的兴趣和热情,增强学生的自信心和自主学习能力。
二、教学内容根据课程目标,教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数等。
具体安排如下:1.第一章:C语言概述,介绍C语言的发展历程、特点和基本语法。
2.第二章:数据类型和运算符,讲解C语言中的基本数据类型、运算符及其使用方法。
3.第三章:控制结构,深入学习条件语句、循环语句等控制结构的使用。
4.第四章:函数,讲解函数的定义、声明、调用以及函数指针等内容。
5.第五章:数组和字符串,学习数组的概念、应用以及字符串的操作。
6.第六章:指针,深入了解指针的概念、运算以及指针与数组、函数的关系。
7.第七章:结构体和联合体,学习用户自定义数据类型、结构体、联合体的使用。
8.第八章:文件操作,掌握文件的基本操作,包括文件的打开、读写、关闭等。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法、实验法等。
在教学过程中,注重理论与实践相结合,使学生在实践中掌握C语言编程的技巧和方法。
同时,通过小组合作、讨论等方式,培养学生的团队协作能力和沟通能力。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将准备以下教学资源:1.教材:《C程序设计语言》(K&R)或《C语言 Primer》(第五版)。
2.参考书:《C语言编程之美》、《C语言深度探索》等。
3.多媒体资料:教学PPT、视频教程、在线编程练习等。
4.实验设备:计算机、编程环境(如Visual Studio、Code::Blocks等)。
c毕业课程设计

c毕业课程设计一、教学目标本课程的教学目标是使学生掌握C语言的基本语法、数据结构和算法,培养学生编写简洁、高效、安全的C程序的能力。
具体目标如下:1.知识目标:(1)理解C语言的基本语法,包括数据类型、运算符、表达式等;(2)掌握C语言的控制结构,包括顺序结构、选择结构和循环结构;(3)熟悉C语言的函数、指针和数组;(4)了解C语言的内存管理、预处理指令和动态分配。
2.技能目标:(1)能够使用C语言编写简单的程序,解决实际问题;(2)能够阅读和理解C语言程序代码;(3)掌握C语言的调试技巧,能够发现和修复程序错误。
3.情感态度价值观目标:(1)培养学生对编程的兴趣和热情,提高学生解决问题的能力;(2)培养学生团队合作精神,提高学生沟通协作能力;(3)培养学生诚实守信、勇于创新的品质。
二、教学内容本课程的教学内容主要包括C语言的基本语法、数据结构、算法和编程实践。
具体安排如下:1.C语言的基本语法:介绍数据类型、运算符、表达式等基本概念;2.C语言的控制结构:顺序结构、选择结构和循环结构;3.C语言的函数、指针和数组:函数的定义和调用、指针的运算和应用、数组的声明和使用;4.C语言的内存管理、预处理指令和动态分配:内存分配和释放、预处理指令的使用、动态分配的概念和方法;5.C语言的编程实践:编写简单的C程序,解决实际问题。
本课程采用讲授法、案例分析法和实验法相结合的教学方法。
具体如下:1.讲授法:通过讲解C语言的基本语法、数据结构和算法,使学生掌握课程的基本知识;2.案例分析法:分析典型的C语言程序案例,使学生理解编程思想和方法;3.实验法:让学生动手编写C程序,培养学生的编程能力和实践能力。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备。
具体如下:1.教材:选用权威、实用的C语言教材,为学生提供系统的学习资料;2.参考书:提供丰富的C语言编程实例,帮助学生提高编程能力;3.多媒体资料:制作生动、直观的教学课件,提高课堂教学效果;4.实验设备:配置充足的计算机和实验设备,保证学生实验教学的需要。
大学生就业咨询系统课程设计报告

课程设计任务书及成绩评定课题名称大学生就业咨询系统Ⅰ、题目的目的和要求:1、设计目的掌握综合应用.NET相关系列课程所学到的知识,以Visual Studio 2005为开发工具,具备利用.NET框架和C#语言开发Web应用程序的能力:(1)通过本课程设计,熟悉系统需求分析过程,掌握建立数据流图、基本数据字典、实体关系图等信息描述及相关系统功能分析的基本方法与常用工具。
(2)能针对选题,创建相应的数据库表,熟悉系统安全性策略的设计过程,掌握数据完整性设计(如数据完整性校验、一致性检查等)的基本方法。
(3)根据系统需求以及所设计的数据结构,分析并设计算法,进而给出问题的正确求解过程并基于.NET框架和C#语言编写代码实现。
2、设计题目要求:要求深入分析大学生就业咨询系统中的共性问题,针对毕业生及招聘单位的特性,完成相关调研工作,给出软件系统的需求分析与详细设计报告,并最终完成大学生就业咨询系统的开发,实现以下功能模块:不同用户登录、毕业生信息管理、招聘单位信息管理、招聘职位信息管理、方便的实现对人才需求信息的检索等,完成课程设计报告的编写。
Ⅱ、设计进度及完成情况日期内容1.10-1.11 选取参考书,查阅有关文献资料,完成资料搜集和系统分析。
1.12~1.14 创建毕业生,招聘单位,需求信息,角色数据表,完成程序界面设计,划分模块。
1.17~1.19 对各模块进行程序设计、调试,对各模块进行整体集成、整体调试,编写详细设计报告。
1.20~1.21 答辩。
Ⅲ、主要参考文献及资料[1] 张海潘. 软件工程导论[M]. 北京:清华大学出版社, 1998.[2] 李勇平. 2.0(C#)基础教程[M]. 北京:清华大学出版社, 2008.[3] 王珊,萨师煊. 数据库系统概论[M]. 北京:高等教育出版社, 2006.Ⅳ、成绩评定:设计成绩:(教师填写)指导老师:(签字)二○一一年一月二十一日目录第一章概述 (1)第二章问题定义 (2)第三章可行性研究 (2)第四章需求分析 (2)第五章总体设计 (6)第六章详细设计 (11)第七章测试与维护 (24)第八章致谢 (25)参考文献 (25)第一章概述课程设计是实践性教学中的一个重要环节,它以某一课程为基础,可以涉及和课程相关的各个方面,是一门独立于课程之外的特殊课程。
毕业生就业统计信息管理系统的设计与实现

毕业生就业统计信息管理系统的设计与实
现
该就业统计信息管理系统主要由以下模块组成:数据录入、数据处理、数据统计、数据展示和数据导出。
数据录入模块
该模块用于管理员录入毕业生就业信息,包括姓名、性别、学校、学历、专业、就业单位、薪资等信息。
管理员需要先进行身份验证,确保录入人员的合法性和信息的准确性。
数据处理模块
该模块用于对录入的数据进行格式化和清洗。
数据格式化包括统一化时间格式、工资格式等;数据清洗包括删除重复数据、删除异常数据、关联数据等。
这些操作可以有效提高数据的可读性和准确性。
数据统计模块
该模块用于对毕业生就业信息进行统计分析。
管理员可以按照所需的维度进行查询,如按照地域、专业、企业等统计毕业生就业
情况,也可以按照时间范围进行查询,比如某一年或某一期间的就业情况等。
数据展示模块
该模块通过图表等方式对管理员进行可视化展示,直观反映毕业生就业情况和发展趋势,供管理员参考决策。
数据导出模块
该模块可将统计结果导出为 Excel 格式,方便管理员进行数据分析和报告编写。
该就业统计信息管理系统设计合理、功能完善,可以满足大部分用户的需求,提高数据处理和管理的效率和质量。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录一、需求分析 (2)二、程序流程图 (4)四、技术要点 (15)五、个人总结 (20)六、参考文献 (21)七、源程序 (21)一、需求分析经过对程序设计题目的分析可知,整个程序的设计实现大致分为七个模块,其中每一个模块对应一个函数,它们的功能分别是:读取文件信息函数,录入学生信息函数,显示学生信息函数,查询函数(包括对学生工作单位、城市、单位性质的查询)。
在这些函数的实现严格按照题目的要求,而前面的三个函数属于附加功能。
1、录入学生信息函数主要实现程序最初运行时学生信息的录入以及其后的运行中学生信息的追加功能;2、显示学生信息函数主要实现对录入的学生信息进行显示方便下面的调用;3、查询函数实现的功能是按照要求对学生的信息记录进行查询、调用;4、查询相同单位学生信息函数按照题目的具体要求实现的是对相同单位学生的信息的调用、查询;5、查询相同城市学生信息函数按照题目的具体要求实现的是对相同城市学生的信息的调用、查询;6、查询相同性质单位信息函数按照题目的具体要求实现的是对相同性质单位的信息的调用、查询;7、退出函数实现的是在程序的一次运行当中循环执行所有功能时根据需要终止程序的执行的功能。
每一个学生记录都包含学号、姓名、班级、专业,而每一个学生的单位信息包含单位名称、地点、性质还有签约时间,在程序当中,将学生记录类型定义为结构体类型,添加以及追加的学生信息直接写入D盘的student.dat文件中,其它函数每次对学生记录的访问,其数据来源都是student.dat文件,这样做不但可以保证学生数据的一致性,而且可以对学生数据进行永久保存,保证每次运行程序都可以采用原来的数据。
二、程序流程图1、程序总体结构图2、具体功能框图(1)读取学生信息函数reads()(2)录入学生信息和单位信息函数add(3)显示学生信息和单位信息、签约时间函数(4)调用相同单位的学生信息danwei(5)调用相同城市的学生信息chengshi(6)调用相同单位性质的学生信息xingzhi三、主要界面截图四、技术要点本程序主要由七个自定义函数和一个主函数组成,其中主函数以菜单的形式调用其它函数来实现要求的所有功能。
在这些函数当中,录入信息函数、显示信息、查询信息函数程序中较为核心的部分,下面分别进行说明。
1、录入信息函数添加信息分为两种情况,其一是在学生文件(student.txt)不存在的情况下,首先由程序创建一个新文件,并将录入的学生信息写入该文件当中;其二是在学生文件(student.txt)已经存在的情况下,此时文件要以读写方式或追加的方式打开,这样才可以保证以前已经存在的数据不丢失。
具体的程序段如下:void add()/*录入学生信息函数*/{FILE *fp;int n,i;struct student stu;if((fp=fopen("d:\\student.txt","r+"))!=NULL){printf("请输入要添加的学生数量,按回车键确认:");scanf("%d",&n);fseek(fp,0L,2);for(i=1;i<=n;i++){ printf("\n请输入第%d个学生的学号、姓名、班级、专业、单位名称、地点、性质、签约时间,用空格分开,并按回车键确认:\n",i);scanf("%s%s%s%s%s%s%s%s",stu.num,,stu.clas,stu.pro,stu. danwei,stu.chengshi,stu.xingzhi,stu.shijian);fprintf(fp,"\n%s %s %s %s %s %s %s %s",stu.num,,stu.clas,s tu.pro,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%s%s%s%s",stu.num,,stu.clas,stu.pro,stu. danwei,stu.chengshi,stu.xingzhi,stu.shijian);fprintf(fp,"\n%s %s %s %s %s %s %s %s",stu.num,,stu.c las,stu.pro,stu.danwei,stu.chengshi,stu.xingzhi,stu.shijian);}}}fclose(fp);}2、显示学生信息该函数主要是为下面的查询函数提供查询的依据。
该函数执行时,首先调用reads函数将文件中的学生信息读出然后输出所有学生信息。
具体程序段如下:void show()/*显示所有学生信息函数*/{struct student stu[N];int i,n;reads(stu,&n);/*从文件中读出学生信息*/printf(" *****************所有学生信息如下*****************");printf("\n 序号学号姓名班级专业单位地点性质签约时间");for(i=0;i<n;i++)printf("\n%5d%9s%5s%7s%7s%5s%5s%9s%5s\n",i+1,stu[i].num,stu[ i].name,stu[i].clas,stu[i].pro,stu[i].danwei,stu[i].chengshi,stu[i].xingzhi ,stu[i].shijian);getch();}3、查询相同单位学生信息函数该函数的核心内容是输入单位名称实现对同一单位学生信息的调用。
该函数执行时,首先调用reads函数将文件中的学生信息读入数组当中,并由用户输入待查询学生的就业单位,而后按照该单位进行查找,如果文件中存在该学生的数据,就按照调用学生函数的方法调用,否则不输出任何信息。
对学生信息的具体调用是在结构体数组中实现的,当学生的信息被找到后,依次在数组的学生记录中寻找相同的信息,这些操作完成后,要调用的学生信息就被调用出来了,也就实现了查询的作用。
void danwei()/*学生单位信息查询*/{struct student stu[N];char danwei[20];int i;reads(stu,&n);printf("\n请输入待查询的单位名称,按回车键确认:\n"); scanf("%s",danwei);for(i=0;i<n;i++)if(strcmp(danwei,stu[i].danwei)==0)printf("\n%5s%5s%5s%5s\n",stu[i].num,stu[i].name,stu[i].clas,stu[i].p ro);}4、查询相同城市学生信息函数该函数的核心内容是输入城市名称实现对学生信息的调用。
该函数执行时,首先调用reads函数将文件中的学生信息读入数组当中,并由用户输入待查询学生的城市,而后按照该城市进行查找,如果文件中存在该学生的数据,就按照调用学生函数的方法调用,否则不输出任何信息。
对学生信息的具体调用是在结构体数组中实现的,当学生的信息被找到后,依次在数组的学生记录中寻找相同元素的信息,这些操作完成后,要调用的学生信息就被调用出来了,也就实现了查询的目的。
具体程序段如下:void chengshi()/*学生就业城市信息查询*/{struct student stu[N];char chengshi[20];int i;reads(stu,&n);printf("\n请输入待查询的城市名称,按回车键确认:\n"); scanf("%s",chengshi);for(i=0;i<n;i++)if(strcmp(chengshi,stu[i].chengshi)==0)printf("\n%5s%5s%5s%5s\n",stu[i].num,stu[i].name,stu[i].clas,stu[i].p ro);}5、查询相同单位性质学生信息函数该函数的核心内容是输入性质实现对学生信息的调用。
该函数执行时,首先调用reads函数将文件中的学生信息读入数组当中,并由用户输入待查询单位的性质,而后按照该单位性质进行查找,如果文件中存在该学生的数据,就按照调用学生函数的方法调用,否则不输出任何信息。
对学生信息的具体调用是在结构体数组中实现的,当学生的信息被找到后,依次在数组的学生记录中寻找相同单位性质的信息,这些操作完成后,要调用的学生信息就被调用出来,也就实现了查询。
具体程序段如下:void xingzhi()/*学生就业单位性质信息的查询*/{struct student stu[N];char xingzhi[20];int i;reads(stu,&n);printf("\n请输入待查询的单位性质,按回车键确认:\n"); scanf("%s",xingzhi);for(i=0;i<n;i++)if(strcmp(xingzhi,stu[i].xingzhi)==0)printf("\n%5s%5s%5s%5s\n",stu[i].num,stu[i].name,stu[i]. clas,stu[i].pro);}五、个人总结之前在大一就学过了C语言,但是学的不是很好,基本处于模糊的状态,甚至对有些概念一点都不熟悉。
但是,在这一周的课设时间里,我认识到了我在这方面的不足,在这一周的时间里,我通过与同学的探讨和一些相关书籍的帮助,使我成功的完成了本次的课设,这次课设,锻炼了我的独立思考与动手能力,促进了我在C语言方面的知识成长,让我在本次学习中听回到了学习的快乐和知识的重要性,所以我非常喜欢这次的课设。