数据结构课程设计《职工通讯管理系统》

合集下载

职工信息管理系统课程设计

职工信息管理系统课程设计

摘要计算机的飞速发展,职工信息管理系统的应用已经十分广泛,它在人们的生产、生活、工作和学习中发挥着重要的作用。

这时,开发一个功能完善的职工信息管理系统就必不可少了。

本文介绍了在C语言框架下采用“自上而下地总体规划,自下而上地应用开发”的策略开发本系统的详细过程,提出了实现职工信息查询、管理、更新的基本目标并阐述系统结构设计和功能设计从软件工程的角度进行了科学而严谨的阐述。

从职工信息的查询到管理实现了自动化的模式,从而提高了工作效率。

为了设计一个功能强大的职工信息管理系统,在设计中我们做出了明细分工,目的是要让本组成员都从这次课程设计中学到编程经验与团队精神。

“职工信息管理系统”,系统以菜单方式工作,编写存放有职工基本信息,包含职工号,姓名,性别,学历,工资,住址,电话等,并且要求录入职工号不重复;可以对录入的信息进行浏览、查询、修改、删除等基本操作,建立职工信息系统的管理。

关键词:职工;系统;程序目录1 前言 (1)1.1项目背景 (1)1.2问题描述 (1)1.3详细 (1)1.4问题分析 (2)2 系统总体设计 (2)2.1.功能描述 (2)2.2系统的总体流程图 (3)3 系统详细设计 (4)3.2模块流程图 (4)4 系统测试 (10)4.1测试举例 (10)5 遇到的问题及解决办法 (13)6 总结 (14)参考文献 (15)致谢 (16)附录 (17)1 前言1.1项目背景职工信息管理系统是一个企业单位不可绝少的部分,它的内容对于企业的决策者和管理者来说都是至关重要的,所以职工信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。

但一直以来各个公司基本上都是靠传统的人工方式来管理职工信息,这种管理方式存在着许多缺点,如效率低,保密性差,另外时间一长将产生大量的文件和数据,这对于信息的查找,更新和维护都带来不少困难。

当今社会,信息迅速膨胀,随着各个公司的规模扩大,有关信息管理工作所涉及的数据量越来越大,职工信息量也大大增加,利用传统的手工查询,等登记和修改等方法的处理速度远远跟不上公司的需求,有的公司不得不靠增加人力,物力来进行信息管理。

职工管理系统课程设计PPT

职工管理系统课程设计PPT

职工管理系统课程设计PPT一、课程目标知识目标:1. 学生能够理解职工管理系统的基本概念,掌握其功能模块和操作流程;2. 学生能够掌握数据库的基本操作,如增加、删除、修改和查询职工信息;3. 学生能够了解软件工程的基本原则,运用面向对象的思想对职工管理系统进行分析和设计。

技能目标:1. 学生能够运用所学知识,独立完成职工管理系统的需求分析、功能设计和界面布局;2. 学生能够利用编程工具,如Visual Studio等,实现职工管理系统的基本功能;3. 学生能够通过团队协作,解决开发过程中遇到的问题,提高沟通与协作能力。

情感态度价值观目标:1. 学生通过学习职工管理系统,培养对信息技术的兴趣和爱好,提高学习积极性;2. 学生能够认识到信息技术在企业管理中的重要作用,增强社会责任感;3. 学生在团队协作中,学会尊重他人、分享成果,培养合作精神和集体荣誉感。

课程性质分析:本课程为信息技术课程,旨在让学生掌握职工管理系统的开发技能,提高实际操作能力,培养具备创新精神和实践能力的信息技术人才。

学生特点分析:本年级学生具备一定的计算机操作基础,对编程有一定了解,但实际开发经验不足。

学生好奇心强,喜欢动手实践,但需加强团队协作和沟通能力的培养。

教学要求:1. 结合课本内容,注重实践操作,提高学生的动手能力;2. 注重启发式教学,引导学生主动思考,培养解决问题的能力;3. 强化团队合作,提高学生的沟通与协作能力。

二、教学内容1. 职工管理系统概述:介绍职工管理系统的发展历程、功能模块和实际应用场景,让学生对职工管理系统有全面的认识。

教材章节:《信息技术》第九章 职工管理系统简介2. 数据库基础:讲解数据库的基本概念、数据表的设计与创建,以及SQL语句的编写与执行。

教材章节:《数据库原理与应用》第二章 数据库基础、第三章 数据表设计与SQL语句3. 需求分析:引导学生学习如何进行职工管理系统的需求分析,包括功能需求、性能需求等。

职工信息管理系统课设报告

职工信息管理系统课设报告

*******************实践教学*******************计算机与通信学院20 年春季学期C程序设计课程设计题目:职工信息管理系统专业班级:姓名:学号:指导教师:成绩:_____________ __摘要职工信息管理系统是一个工作单位不可缺少的管理工具,它管理的数据对于公司的决策者和管理者来说都至关重要,所以职工信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。

使用计算机对职工信息进行管理,具有手工管理所无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。

这些优点能够极大地提高职工管理的效率,也是公司的科学化、正规化管理和与世界接轨的重要条件。

本系统利用C语言开发,实现了简单的职工基本信息的录入、追加、修改、查询、删除等操作,并且能利用文件系统长久地保留原始数据。

通过本系统的开发,我们熟悉了面向过程的程序设计的基本方法和步骤,对于C语言有了更深入的理解,并且较好地掌握了C语言的编程方法和技术。

关键字:C语言;职工;信息管理系统;函数目录一、需求分析 (1)二、总体设计 (2)三、详细设计 (3)3.1数据定义 (3)3.2主函数设计 (4)3.3算法流程图 (5)四、编码 (9)五、测试 (10)5.1职工管理系统主界面 (10)5.2进入新增职工信息界面 (11)5.3进入删除职工信息界面 (12)5.4进入查询职工信息界面 (13)5.5进入修改职工信息界面 (14)5.6进入职工信息排序界面 (15)5.7退出系统 (16)六、设计总结 (17)致谢 (18)参考文献 (19)附录 (20)一、需求分析1.1问题描述对单位的职工进行管理,包括插入、删除、查找、排序等功能。

1.2要求职工对象包括姓名(字符串)、性别(字符)、出生年月(数字)、工作年月(数字)、学历(字符串)、职务(字符串)、住址(字符串)、电话(字符串)等信息。

数据库课程设计报告-职工管理系统

数据库课程设计报告-职工管理系统
(2) 查找与qiaqia公司在低点的公司名和面积
(3)为WD建立触发器,当插入或更新表中数据时保证所操作的记录的salary大于等

(4)编写函数根据职工编号查询职工名称
设计体会与建议: 通过这次的职工管理系统课程设计,我收获了很多。首先,
对于公司内部管理有了更深入的了解,尽管在做需求分析的时候 遇到了一些麻烦,但还是尽自己最大努力解决了。本次设计基本 上完成了对数据库中信息的查询、修改、删除、录入等功能,也 对数据的录入做了一些检验与鉴定,对不合理的操作采取禁止方 式。遗憾的是我的系统并不是一个完整的系统,没有完备的前台
1.查询功能 本软件能查询公司内部数据库中录有的文件内容,方便、直
接、有效。 2.修改功能 本软件课实现对录入的数据进行修改更行操作,保证数据的
正确性。 3.删除功能 本软件能实现对录入的数据进行删除操作,实现对不需要的
数据进行去除。 4.插入功能 本软件能实现对数据的插入操作,实时更新数据库。 5. 数据检验功能
课程设计报告 (本科)
课程: 学号: 姓名: 班级: 教师: 时间:
数据库原理
计算机科学与技术系
设计名称: 职工管理系统
设计内容、目的与要求: 内容:设计交职工管理系统,实现该系统所需的基本功能,主要 内容包括需求分析、数据库概念设计、逻辑设计、物理设计、程 序调试和运行,以及总结。 目的:使用SQL语言设计职工管理系统实现对职工信息的管理, 实现对所学知识的加深了解和运用 要求:
设计过程、步骤:步 数据库概念设计 第3步 数据库逻辑设计 第4步 数据库物理设计 第5步 数据库的实现 画出E-R图 2.进行数据库概念设计,转换ER图为关系模式 (1)公司:(编号,名称,位置,面积) (2)办公室:(编号,大小,名称,主任) (3)部门:(编号,名称,人数) (4)项目:(编号,名称,负责人,预算,起始时间,结束时 间,合作公司) (5)职工:(编号,姓名,性别,职位) 4.程序调试和运行 结果与分析: 数据库中部分语句和实现结果 (1)查询qiaqia公司有多少员工

数据库课程设计-企业职工管理系统

数据库课程设计-企业职工管理系统

企业职工管理系统《数据库原理及设计》课程设计报告专业班级组员组长指导老师目录1绪论 ........................................... 错误!未定义书签。

1.1背景......................................... 错误!未定义书签。

1.2定义......................................... 错误!未定义书签。

2需求分析 ....................................... 错误!未定义书签。

2.1数据字典.................................... 错误!未定义书签。

2.2数据流图.................................... 错误!未定义书签。

3结构设计 ....................................... 错误!未定义书签。

3.1概念结构设计................................. 错误!未定义书签。

3.2逻辑结构设计................................. 错误!未定义书签。

3.3物理结构设计................................. 错误!未定义书签。

4运用设计 ....................................... 错误!未定义书签。

4.1安全保密设计................................. 错误!未定义书签。

4.2系统运行与维护............................... 错误!未定义书签。

1.绪论1.1背景目前,一些企业对员工信息的管理还存在诸多问题,单靠人力进行员工信息的管理是不够的。

所以对于一个企业来说,不管是规模较小,还是规模较大的,员工信息管理系统都非常重要的。

数据结构简单的职工管理系统完整版

数据结构简单的职工管理系统完整版

湖南涉外经济学院数据结构课程设计报告题目:简单的职工管理系统院系名称:计算机学院专业名称:计算机科学与技术班级:计科201001班****:***学号:30****:***设计起止时间:2011年11月20日~2011年12月30日完成于2011年12月29日星期四目录第一章序 (1)第二章系统总体功能的设计和分析 (3)1、问题描述 (3)2、详细要求 (3)3、功能分析 (4)1、具体要求................................................................. 错误!未定义书签。

2、系统流程分析 (4)3、系统功能结构 (5)4、模块函数构造 (6)第三章详细设计分析 (7)1、抽象数据类型定义 (7)2、主函数设计 (8)3、查找算法设计 (9)4、排序算法设计 (8)第四章源程序代码 (11)第五章系统实现 (29)第六章课程设计总结 (31)第一章序电子信息时代由如洪水一样的凶猛,能在现实社会应用软件给我们的生活和工作带来方便和实用性就是软件存在的最大的价值。

数据结构所能解决的就是这些复杂的问题简单化。

《数据结构》是计算机专业学生学习的一门基础课程,但十分的重要。

本课程系统地介绍了软件设计中常用的数据结构以及相应的存储结构和实现算法,介绍了常用的多种查找和排序技术。

本课程将为整个专业的学习以及软件设计水平的提高打下良好的基础。

为了学好《数据结构》,必须掌握编写一些在特定数据结构上的算法,并通过上机调试,更好地掌握各种数据结构及其特点。

经过本次课程设计,我们对于数据结构基本理论和存储结构及算法设计将有更加深入的理解,并提高我们在实际设计操作中系统分析、结构确定、算法选择、数学建模和信息加工的能力,提高我们的C/C++语言程序设计能力,以及培养学我们编写程序设计文档的能力,为将来在实战工作中打下良好的基础。

在经济发达的今天对于职工简单的管理都是有很大程度上的要求,一个工司能否较好较快的运行,与职工管理的好坏分不开关系,通过该系统,将一系列的问题系统化,能够更好的管理职工。

C语言课程设计报告:职工信息管理系统程序设计

1.课程论文题目职工信息管理系统程序设计一、题目要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

试设计一职工信息管理系统,使之能提供以下功能:(1)系统以菜单的方式工作。

(2)职工信息录入功能(职工信息用文件保存)。

(3)职工浏览功能。

(4)职工信息查询功能,查询方式可按学历查询或者工号查询。

(5)职工信息的删除、修改功能(可选项)。

2.程序设计思路1、设计思路(1)根据题目要求,应该把职工工资信息用结构体形式输入,在定义一个全局变量和文件指针进行整个程序的运行,然后把职工工资信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;(2)在程序中需实现职工工资浏览、查询、统计等功能的操作,所以需要建立相应的功能模块来实现;(3)另外还需要提供键盘式选择菜单实现功能,在运行时达到所要的目的。

3.功能模块图5.算法设计1.主函数提供输入、处理和输出部分的函数调用,各功能模块采用菜单方式选择。

2浏览模块【分析】该模块的功能是浏览职工的全部信息3排序模块4查询模块【分析】该模块的功能是根据输入的职工按照工号和学历查找对应的记录,找到以后,可进行继续查找或修改信息的操作。

流程图如下:5修改模块【分析】该模块的功能是显示所有职工的信息,考虑到记录较多,建议采用分屏显示。

显示完所有记录后,输入要修改的职工的工号,根据工号查到职工的记录,并提示用户修改该记录的哪部分信息,根据用户做的选择修改相应信息。

流程图如下:6.程序代码#include<stdio.h>#define N 50struct worker{char id[50];char name[20];char sex[10];char age[10];char edu[20];char salary[10];char address[20];char tel[20];}worker[N];void save(int n) //保存函数,保存n个记录{ FILE *fp;int i;if((fp=fopen("worker.txt","wb"))==NULL) //以只写方式为输出打开一个二进制文件{ printf("\nCannot open file\n");}for(i=0;i<n;i++)if(fwrite(&worker[i],sizeof(struct worker),1,fp)!=1)printf("file write error\n");fclose(fp);}int load() //加载函数{ FILE *fp;int i;if((fp=fopen("worker.txt","rb"))==NULL){printf("\nCannot open file\n");return NULL;}for(i=0;!feof(fp);i++)fread(&worker[i],sizeof(struct worker),1,fp);fclose(fp);return(i-1);}void no_input(int i,int n) //工号输入函数,i表示第i个职工的信息,n 表示比较到第n个职工{ int j,k,w1;do{w1=0;printf("工号:");scanf("%s",worker[i].id);for(j=0;worker[i].id[j]!='\0';j++)if(worker[i].id[j]<'0'||worker[i].id[j]>'9') //判断工号是否为数字{puts("请重新输入!\n");w1=1;break;}if(w1!=1)for(k=0;k<n;k++) //比较到第N个职工if(k!=i&&strcmp(worker[k].id,worker[i].id)==0) //判断职工号是否有雷同{puts("请重新输入!\n");w1=1;break;}}while(w1==1);}void input(int i) //输入一个记录的函数{ no_input(i,i);printf("姓名:");scanf("%s",worker[i].name);printf("性别:");scanf(" %s",&worker[i].sex);printf("年龄:");scanf("%s",&worker[i].age);printf("工资:");scanf("%s",worker[i].salary);printf("学历:");scanf("%s",&worker[i].edu);printf("住址:");scanf("%s",worker[i].address);printf("电话:");scanf("%s",worker[i].tel);}void printf_one(int i) //显示一个记录的函数{printf("%10s %10s %5s %5s %8s %6s %10s %10s\n",worker[i].id,worker[i].name,worker[i].sex,worker[i].age,worker[i].salary,worker[i].edu,worker[i].address,worker[i].tel); }void printf_back() //一个任务结束后选择是好似浏览还是返回{ int k,w;printf("\n\n\tSuccessful^-^.\n\n");printf("接下来做什么?\n\n\t1).浏览全部\t2).返回: [ ]\b\b");scanf("%d",&w);if(w==1)browse();else menu();}modify_data(int i,int n) //修改函数{ int c,w1;do{puts("\nmodify by=>\n\n 1).工号 2).姓名 3).性别 4).年龄 5).工资6).学历 7).地址 8).电话 9).取消");printf("请选择?:[ ]\b\b");scanf("%d",&c);if(c>9||c<1){puts("\nChoice error!please again!");getchar();}}while(c>9||c<1);do{switch(c){case 1:no_input(i,n);break;case 2:printf("name:");scanf("%s",worker[i].name);break;case 3:printf("sex:");scanf("%s",worker[i].sex);break;case 4:printf("age:");scanf("%s",worker[i].age);break;case 5:printf("salary:");scanf("%s",worker[i].salary);break;case 6:printf("edu:");scanf("%s",worker[i].edu);break;case 7:printf("address:");scanf("%s",worker[i].address);break;case 8:printf("tel:");scanf("%s",worker[i].tel);break;case 9:menu();break;}puts("\nNow:\n");printf_face();printf_one(i);printf("\n确定?\n\n\t1).是2).否,重新修改3).不保存退出[ ]\b\b");scanf("%d",&w1);if(w1==1)save(n);}while(w1==2);return(w1);}printf_face() //显示数据结构项目{ printf("\n\t工号姓名性别年龄工资学历地址电话号码\n"); }void enter() //输入模块{ int i,n;printf("输入多少个职工信息(0-%d):",N-1);scanf("%d",&n);printf("\n 请输入职工信息\n\n");for(i=0;i<n;i++)input(i);if(i!=0)save(n);printf_back();}browse() //浏览模块{ int i,j,n;n=load();printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)){printf("\n\n按任意键显示下一页...");getch();puts("\n\n");}printf_one(i);}printf("\t这里有 %d 条记录.\n",n);printf("\n按任意键返回...");getch();menu();}modify() //修改模块{struct worker s;FILE *fp;int i,n,k,w0=1,w1,w2=0;n=load();do{k=-1;printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)) //目的是分屏显示{printf("\n\n记住要修改的工号.按任意键显示下一页");getch();puts("\n\n");}printf_one(i); //调用显示一个记录的函数}do{printf("\n\n输入要修改的职工工号! 工号:");scanf("%s",s.id); //输入要修改的IDfor(i=0;i<n;i++) //查找要修改的数据if(strcmp(s.id,worker[i].id)==0){k=i; //找到要修改的记录s=worker[i]; //把worker[i]备份,以便恢复}if(k==-1)printf("\n\n未找到请重输");}while(k==-1); //当k=-1表示没有找到printf_face(); //调用显示数据结构项目的函数printf_one(k); //调用显示一个记录的函数w1=modify_data(k,n); //修改记录并返回保存控制值w1,w1=1表示用户已确认修改if(w1==1){printf("\Successful^_^.\n\n修改另一个?\n\n\t1).是 2).否,保存退出\t[ ]\b\b");scanf("%d",&w0);w2=1; //用来控制保存,使w2=1是标记已有过修改}else{w0=0;if(w2==1)worker[k]=s;}if(w0!=1&&w2==1)save(n);}while(w0==1);menu();}search() //查询模块{ int c,w1;do{puts("\nsearch by=>\n\n1).工号 2}.学历 3).取消并返回"); printf("Which you needed?:[ ]\b\b");scanf("%d",&c);if(c>3||c<1){ puts("\nchoice error!please again!");getchar();}}while(c>3||c<1);{switch(c){case 1:search1();break;case 2:search2();break;case 3:menu();break;}}}search1() //按工号查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n输入要查询的工号! id:");scanf("%s",s.id);printf_face();for(i=0;i<n;i++)if(strcmp(s.id,worker[i].id)==0){k=i;printf_one(k);break;}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search1();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}search2() //按学历查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n请输入你要查询的学历:\n");scanf("%s",);printf_face();for(i=0;i<n;i++)if(strcmp(,worker[i].edu)==0){k=i;printf_one(k);}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search2();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}menu(){int n,w1;do{puts("\t\t*******************菜单*******************\n\n");puts("\t\t\t\t1.录入职工信息");puts("\t\t\t\t2.浏览职工信息");puts("\t\t\t\t3.查询职工信息");puts("\t\t\t\t4.修改职工信息");puts("\t\t\t\t5.退出");puts("\t\t****************************************\n\n");printf("请选择(1~5): [ ]\b\b");scanf("%d",&n);if(n<1||n>5) //对选择的数字作判断{w1=1;getchar();}else w1=0;} while(w1==1);switch(n){case 1:enter();break; //录入 case 2:browse();break; //浏览 case 3:search();break; //查询 case 4:modify();break; //修改 case 5:exit(0); //退出}}main(){menu();}7.程序运行结果下面是各个模块的的界面截图(1)、主菜单(2)、输入模块(3)、浏览模块(3)、查找模块(4)、修改模块8.编程中遇到的困难及解决方法温故而知新,可以为师矣。

课程设计之职工信息管理系统(doc 8页)

课程设计之职工信息管理系统(doc 8页)山东信息职业技术学院软件工程系课程设计报告书题目:职工信息管理系统系部:软件工程系专业:网络系统管理班级:07软件7班学号:2007030701姓名:同组者:_______________________组号:组长:指导教师:开始时间:2008-6-10完成时间:2008-6-16年月日下间距为:段前0.5行,段后0.5行)总体设计的目的是根据需求分析文档,初步提出问题的解决方案,以及软件系统的体系结构和数据结构的设计方案,为下一步进行详细设计做准备。

3.1 功能模块图(作为正文2级标题,用4号黑体,加粗)3.1.1 各模块逻辑图(作为正文3级标题,用小4号黑体,不加粗)该系统可以按功能进行模块划分,其模块图如下:其中:信息输入模块完成职工信息的输入功能,输入信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等;信息浏览模块完成已录入职工信息的显示;信息查询模块完成职工信息的查询,查询时对应有按工资查询和按学历查询两种方式;信息修改模块完成职工信息的修改功能;信息删除模块完成职工信息的删除功能;菜单选择模块完成用户命令的接收,此模块也是职工信息管理系统的入口,用户所要进行的各种操作均需在此模块中进行选择并进而调用其他模块实现相应的功能;3.1.2 项目分工组长的设计报告中应有各模块分工情况。

如:角色姓名学号分工(5号宋体)组长2007030701张某项目总体规划设计、模块划分、界面设计组员2007030702王某登录模块、删除模块2007030703李某查询模块2007030704孙打印模块某各组员的设计报告中应明确写明自己负责的模块名称。

3.2 数据结构(作为正文2级标题,用4号黑体,加粗)本系统中主要的数据结构就是职工的信息,包含职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等,在处理过程中各项可以作为一个职工的不同属性来进行处理。

c语言课程设计职工信息管理系统

c语言课程设计职工信息管理系统一、教学目标本课程的教学目标是使学生掌握C语言职工信息管理系统的基本概念、设计和实现方法。

通过本课程的学习,学生应能理解职工信息管理系统的需求分析、系统设计、编码实现和测试评估等环节,掌握C语言编程的基本技能,并培养解决实际问题的能力。

具体来说,知识目标包括:掌握职工信息管理系统的功能模块及其相互关系;理解C语言的数据类型、运算符、控制结构、函数等基本语法;了解软件工程的基本原理和方法。

技能目标包括:能够使用C语言独立完成职工信息管理系统的设计和实现;具备基本的调试和优化代码的能力;能够进行团队合作,合理分工,共同完成项目。

情感态度价值观目标包括:培养学生对计算机科学的兴趣和热情,提高他们对编程学习的自信心;培养学生具备良好的编程习惯和团队协作精神,增强他们的责任感和使命感。

二、教学内容本课程的教学内容主要包括以下几个部分:1.职工信息管理系统的基本概念和架构:介绍职工信息管理系统的功能模块,如职工信息录入、查询、修改和删除等,以及各模块之间的关系。

2.C语言基础知识:讲解C语言的数据类型、运算符、控制结构、函数等基本语法。

3.软件工程方法:介绍需求分析、系统设计、编码实现、测试评估等软件工程基本原理和方法。

4.职工信息管理系统的实现:通过实际编码,讲解如何使用C语言实现职工信息管理系统的各个功能模块。

5.调试与优化:教授如何使用调试工具对代码进行调试,以及如何对代码进行优化,提高系统性能。

三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式,包括:1.讲授法:讲解C语言的基本语法和职工信息管理系统的设计原理。

2.案例分析法:分析实际案例,使学生更好地理解职工信息管理系统的实现过程。

3.实验法:安排实验课程,让学生亲自动手编写代码,实现职工信息管理系统。

4.小组讨论法:学生进行小组讨论,分享学习心得,互相答疑解惑。

四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:《C语言程序设计》等。

C语言课程设计——职工信息管理系统设计

1.设计目的在今天这个高速信息时代,许多繁杂的办公事务都由计算机代劳,例如职工信息管理等重复劳动越来越需要计算机来处理。

本系统就是为提高企业管理职工信息的效率而设计的,现在职工信息管理系统发挥无可取代的作用。

职工信息管理系统是一个可以用来进行职工工号、姓名等自然信息以及各项工资构成进行录入、查询、修改、删除、增加和排序浏览等操作的应用软件。

2.设计的总体思想本系统是用Visual C进行设计与开发,总体思想是结构化、模块化的程序设计。

由于主要实现的是管理系统的增、删、改、查和排序等功能,因此应用到程序设计中的基本控制结构,如循环和选择,还使用到C语言最具特色的语言成分——指针,高效地使用数组、字符串和结构体,采用经典的排序方法——冒泡法进行排序,并且包含对文件的读、写等基本操作。

3.功能模块描述职工信息管理系统是为企业进行职工信息管理提供辅助而设计的,需要为用户提供一个简单的人机界面以便操作,各功能模块如下。

1)登录模块:根据输入的登录密码判断是否允许该用户使用本系统,输入密码正确才能进入管理界面,管理职工信息。

2)创建模块:当第一次使用本系统时,根据提示输入职工的工号、姓名、性别、年龄、学历、职位、工资、电话和住址,可一次性输入多条职工的信息记录。

浏览模块:可以浏览经输入、修改、删除、添加、排序、读取后的职工信息。

3)查询模块:分为根据工号、姓名、电话、工资查询的四个具体需求,分别提示管理员要查询的职工信息的的工号、姓名、电话或工资。

4)修改模块:分为根据工号、姓名修改的两个具体需求,分别提示管理员要修改的职工信息的工号和姓名,如果有对应职工的信息记录存在,则逐项列出对应职工的信息。

5)删除模块:分为根据工号、姓名删除的两个具体需求,分别提示管理员要删除的职工信息的工号和姓名,如果有则删除此职工对应的信息记录。

6)添加模块:可在原有职工信息记录的基础上增加新的职工信息记录,并保存至磁盘中。

7)排序模块:分为根据姓名、年龄、工资排序的三个具体需求,分别提示管理员选择排序的方式。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据结构课程设计:学生成绩管理
250
[ 标签:数据结构,课程设计,学生成绩 ]
要求:
1) 输入学生基本信息及三科考试成绩;
2) 显示出三科成绩中有补考的学生;
3) 对学生按总分降序排序(至少采用两种排序方法实现);
4) 输入一个学生姓名后,能查找到此学生的信息并输出结果(至少采用两种查
找方法实现)。
西风狂想诗 回答:1 人气:12 解决时间:2010-07-15 09:48

满意答案
好评率:0%
#include"stdio.h"
#include"string.h"
#define M 100
typedef struct{
char name[20];//姓名
int math;//数学
int En;//英语
int Ch;//语文
int all;//总分
}student;
student Stu[M];
int i=0;//记录数据结构结尾

void input()//输入函数
{

char T;
while(i {
printf("输入学生姓名:");
scanf("%s",&Stu[i].name);
printf("输入数学成绩:");
scanf("%d",&Stu[i].math);
printf("输入英语成绩:");
scanf("%d",&Stu[i].En);
printf("输入语文成绩:");
scanf("%d",&Stu[i].Ch);
Stu[i].all=Stu[i].math+Stu[i].En+Stu[i].Ch;
i++;
printf("继续输入请按Y,停止请按N:");
scanf("%s",&T);
if(T=='N'&&i {Stu[i].all=0;Stu[i].Ch=1;Stu[i].En=1;Stu[i].math=1;Stu[i].name[20]
='.';break;}
}
}

void bukao()//补考显示
{
int j;
for(j=0;j {
if(Stu[j].math<60||Stu[j].En<60||Stu[j].Ch<60)
{printf("%s\n",Stu[j].name);}
}
}

void search()//查询学生成绩
{
int k;
char P,Name[20];
while(1)
{
printf("输入要查询的学生姓名:");
scanf("%s",Name);
for(k=0;k {
if(strcmp(Stu[k].name,Name)==0)
{
printf("数学:%d\n英语:%d\n语文:%d\n总
分:%d\n",Stu[k].math,Stu[k].En,Stu[k].Ch,Stu[k].all);
}
}
printf("若继续查询请按Y,否则请按N");
scanf("%s",&P);
if(P=='N')
{break;}
}
}
void main()
{
input();
printf("以下是要补考的学生\n");
bukao();
printf("现在可以查询学生成绩\n");
search();

}

还有个排序没给你写,给你段分治递归排序法德代码,很简单可以填进去。
int a[MAXSIZE];
void qsort(int i,int j){

if(i==j)return;

else{

int k=i;//定义基准位置
int temp1;//两个中间变量帮助划分
int p,q;

for(p=i;p<=j;p++)
{//求划分后基准的位置
if(a[p] {
temp1=a[p];
for(q=p;q>k;q--)
{
a[q]=a[q-1];
}
a[k]=temp1;
k++;
}
//分治递归
qsort(i,k-1);
qsort(k+1,j);
}
}
}

此外还有冒泡排序,堆排序很多,那就楼主多学习了,写再多都不如自己练一
练。写了好长时间,望采纳哦~~

提问人的追问 2010-07-13 18:14
虽然只用了部分功能~~不过还是十分感谢。

相关文档
最新文档