数据结构简单教职工管理系统课程设计报告文档格式.docx

上传人:b****7 文档编号:22170715 上传时间:2023-02-02 格式:DOCX 页数:37 大小:253.99KB
下载 相关 举报
数据结构简单教职工管理系统课程设计报告文档格式.docx_第1页
第1页 / 共37页
数据结构简单教职工管理系统课程设计报告文档格式.docx_第2页
第2页 / 共37页
数据结构简单教职工管理系统课程设计报告文档格式.docx_第3页
第3页 / 共37页
数据结构简单教职工管理系统课程设计报告文档格式.docx_第4页
第4页 / 共37页
数据结构简单教职工管理系统课程设计报告文档格式.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

数据结构简单教职工管理系统课程设计报告文档格式.docx

《数据结构简单教职工管理系统课程设计报告文档格式.docx》由会员分享,可在线阅读,更多相关《数据结构简单教职工管理系统课程设计报告文档格式.docx(37页珍藏版)》请在冰豆网上搜索。

数据结构简单教职工管理系统课程设计报告文档格式.docx

%s"

fname);

//接收文件名

if((fp=fopen(fname,"

w"

))==NULL)//创建文件

{

}

fclose(fp);

……

insert();

//调用insert()函数保存信息

}

增加函数:

新增一名职工的信息,并保存到文件中。

voidinsert()

{

xinxiworker;

……//对worker进行初始化

cout<

<

"

请按以下顺序输入职工信息!

endl;

姓名性别生日工日学历职务地址电话"

%s%s%s%s%s%s%s%s"

&

worker.name,&

worker.sex,&

worker.birthday,&

worker.workday,&

worker.xueli,&

worker.zhiwu,&

worker.address,&

worker.tel);

writef(worker);

//保存信息

删除函数:

对指定的职工的信息进行删除

voiddel(linklist&

L)

{jp_c:

……

name);

while(p)//名字不匹配且未找到链尾

{if(strcmp(p->

name,name)==0)

{r->

next=p->

next;

//删除信息

……

printf("

是否继续删除(Y/N)?

\n"

);

//询问是否继续删除其他

cin>

>

c;

if(c=='

Y'

||c=='

y'

gotojp_c;

else

{printf("

是否输出删除后的职工信息(Y/N)?

cin>

if(c=='

)//若是,输出删除后的职工信息

{

……

}

else

return;

}

}

r=p;

p=p->

if(x==0)//若未找到,给出提示信息printf("

未找到该职工的信息!

查找函数:

查询符合某些条件的职工信息

voidsearch(linklist&

{jp_c3:

printf("

1、姓名2、电话3、综合查找\n"

//查找方式选择

%d"

choose);

switch(choose)

{case1:

default:

输入错误!

;

if(ch=='

||ch=='

)//是否继续查找

gotojp_c3;

修改函数:

对指定的某职工的某些属性进行修改

voidxiugai(linklist&

//接收要修改的职工的名字

while(p)

{printf("

1、姓名2、性别3、生日4、工日5、学历6、职务7、地址8、电话\n"

//修改选择

jp_c4:

scanf("

for(intj=0;

j++)

{switch(choose)

{case1:

default:

if(ch=='

)//询问是否继续进行其他修改

gotojp_c4;

……//退出循环

i++;

if(i)//输入修改后的该职工的信息

……

else//若不存在给出提示信息

cout<

不存在职工信息,无法修改!

排序函数:

按照某种需要对职工信息进行排序

voidrank(linklist&

{jp_c2:

1、姓名2、性别3、生日4、工日\n"

//排序需求选择

)//询问是否继续按照其他需求排序

gotojp_c2;

显示函数:

对所有的职工信息输出

voidShow_all(linklistL)

{cout<

//设置显示效果

while(p)//显示职工信息

printf("

%-9s"

p->

name);

%-7s"

sex);

%-13s"

birthday);

workday);

%-8s"

xueli);

%-10s"

zhiwu);

address);

%-11s"

tel);

结果与分析(可以加页):

进入程序,显示的界面

创建文件,录入信息,并保存到文件中

添加职工信息,并保存到文件中

按姓名查找姓名为zhu的职工的信息

以修改生日为例,修改职工的某些属性

程序结束时的提示界面

设计体会与建议:

此次课程设计是我们第一次自己完成一个可以实现对信息录入、储存、读取、并对这些信息进行相关操作的程序。

在源代码的编写中,使用了不同的函数来达到不同的功能,也让我们体会到,在使用函数分工后整个程序变得条理清楚,用不同的功能来划分函数使得排错轻松了很多,让我们体会到,当编写稍大一些的程序时,条理清楚是多么重要。

同时,我们也对那些外观精美的程序非常好奇,希望以后也可以将界面美化,使得程序更具使用价值。

C语言是编程语言中非常经典非常基础的一种,我们差的还很远,这次编程让我们认识到,想编出好程序,就必须吃透书本,这样才能更轻松地跨过书本与电脑之间的障碍。

只有思路明确才能有条不紊。

所以,我们应当更加努力,注重思维模式的培养和迁移,争取在不久的将来可以熟练掌握这一工具,为接下来的学习打好基础。

课程设计的题目是求最短路径,本来是想通过算法的实现把这个程序与交通情况相连,但是因为来不及查找各地的信息,所以,这个计划就没有实现,我相信在以后有更长时间的情况下,我会做出来的。

1、巩固和加深了对数据结构的理解,提高综合运用本课程所学知识的能力。

2、培养了我选用参考书,查阅手册及文献资料的能力。

培养独立思考,深入研究,分析问题、解决问题的能力。

3、通过实际编译系统的分析设计、编程调试,掌握应用软件的分析方法和工程设计方法。

4、通过课程设计,培养了我严肃认真的工作作风,逐步建立正确的生产观念、经济观念和全局观念。

通过此次课程设计,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。

实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。

在课程设计过程中,我们不断发现错误,不断改正,不断领悟,不断获龋最终的检测调试环节,本身就是在践行“过而能改,善莫大焉”的知行观。

这次课程设计终于顺利完成了,在设计中遇到了很多问题,最后在老师的指导下,终于游逆而解。

在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,

根据我在实习中遇到得问题,我将在以后的学习过程中注意以下几点:

1、认真上好专业实验课,多在实践中锻炼自己。

2、写程序的过程中要考虑周到,严密。

3、在做设计的时候要有信心,有耐心,切勿浮躁。

4、认真的学习课本知识,掌握课本中的知识点,并在此基础上学会灵活运用。

数据结构是一门非常有用的课程,尤其是在编程序时,一定要认真有耐心,不要浮躁。

在以后的学习中也要认真积极的去对待!

不仅仅是学习,也是人生的生活的态度!

附录:

源程序代码

#include<

stdio.h>

stdlib.h>

#include<

windows.h>

//Sleep()函数的头文件功能:

执行挂起一段时间

#include<

conio.h>

//getch()函数的头文件

string.h>

iostream.h>

typedefstruct

charname[18];

charsex[8];

//性别;

男male,女female

charbirthday[11];

charworkday[11];

charxueli[10];

charzhiwu[10];

charaddress[10];

chartel[12];

}xinxi;

typedefstructXX

structXX*next;

}node,*linklist;

charfname[15]="

work10.txt"

//不重新创建文件时,对文件work10.txt进行操作;

若创建新文件则其值改变

//--------------------------------------------------------------------------------------

//辅助函数

voidmenu()

cout<

|------------------------------------------------------------------------------|"

//-80个

|欢迎使用职工管理系统|"

|0、结束操作|"

|1、创建职工文件|"

|2、添加职工信息|"

|3、删除职工信息|"

|4、查找职工信息|"

|5、修改职工信息|"

|6、排序职工信息|"

|7、显示所有职工信息|"

voidEXIT()

\n\n\n\n\n\n"

|谢谢使用!

|"

||"

|欢迎下次使用!

|再见!

|"

voidwritef(xinxiworker0)

FILE*fp;

a"

))==NULL)

文件不存在!

请先创建!

exit(0);

if(fwrite(&

worker0,sizeof(xinxi),1,fp)!

=1)

filewriteerror!

信息保存成功!

voidprint(linklistL)

{

linklistq;

q=L->

while(q)

{

姓名%s\n"

q->

性别%s\n"

生日%s\n"

工日%s\n"

学历%s\n"

职务%s\n"

地址%s\n"

电话%s\n"

q=q->

voidreadall(linklist&

L,xinxiworker0)

inti;

L=newnode;

L->

next=NULL;

linklistu,p;

p=L;

FILE*fp;

r"

无法打开此文件!

while(!

feof(fp))

if(fread(&

{

if(feof(fp))

{

fclose(fp);

break;

printf("

readfileerror!

}

u=newnode;

for(i=0;

i<

18;

i++)

u->

name[i]=worker0.name[i];

8;

sex[i]=worker0.sex[i];

11;

birthday[i]=worker0.birthday[i];

workday[i]=worker0.workday[i];

10;

xueli[i]=worker0.xueli[i];

zhiwu[i]=worker0.zhiwu[i];

address[i]=worker0.address[i];

tel[i]=worker0.tel[i];

u->

tel[i]=NULL;

p->

next=u;

p=u;

p->

//功能函数

voidinsert();

intnum,i;

请输入文件名:

strcat(fname,"

.txt"

//串连接函数,把第二个字符串添加到第一个字符串后面

打开文件出错!

文件创建成功!

下面开始输入职工信息!

endl<

任意键继续..."

getch();

system("

cls"

你想输入多少个职工信息?

请输入:

cin>

num;

for(i=0;

worker.name[i]='

'

worker.sex[i]='

worker.birthday[i]='

worker.workday[i]='

worker.xueli[i]='

worker.zhiwu[i]='

worker.address[i]='

12;

worker.tel[i]='

linklistp,r;

jp_c:

charname[10],c;

intx=0;

p=L->

r=L;

colorf0"

请输入删除职工的名字:

if(strcmp(p->

r->

free(p);

x++;

删除成功!

cout<

*****************************"

print(L);

输出完成!

getch();

if(x==0)

voidsearch_name(linklistL)

node*p;

charname[10];

intn=0;

请输入要查找职工的姓名:

正在进行查找,请稍候...\n"

intk=3;

350000000*k;

i++)//延时3秒

{}

该职工的信息如下:

********************************\n"

生日%s\n

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 其它模板

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

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