课程设计模板.docx

上传人:b****8 文档编号:30554439 上传时间:2023-08-16 格式:DOCX 页数:32 大小:65.29KB
下载 相关 举报
课程设计模板.docx_第1页
第1页 / 共32页
课程设计模板.docx_第2页
第2页 / 共32页
课程设计模板.docx_第3页
第3页 / 共32页
课程设计模板.docx_第4页
第4页 / 共32页
课程设计模板.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

课程设计模板.docx

《课程设计模板.docx》由会员分享,可在线阅读,更多相关《课程设计模板.docx(32页珍藏版)》请在冰豆网上搜索。

课程设计模板.docx

课程设计模板

存档资料成绩:

 

华东交通大学

课程设计报告书

(本页面不需打印,要到教材科购买牛皮纸封面按要求填写,全班统一购买)

所属课程名称C++程序设计  

题目职工信息管理系统 

院(系)  软件学院   

班级软件+桥梁2011--1班

学  号20112110060113        

学生姓名熊雄        

指导教师  廖辉传   

辅导教师 廖辉传

2012年6月15日

课程设计(论文)任务书

软件 学  院桥梁专  业 1 班  

一、课程设计(论文)题目  职工信息管理  

二、课程设计(论文)工作自2012年6月4日起至2012年6月10日止。

三、课程设计(论文)地点:

软件学院实训中心

四、课程设计(论文)内容要求:

1.本课程设计的目的

(1)使学生掌握系统各功能模块的基本工作原理;

(2)培养学生程序设计的基本思路和方法;

(3)使学生掌握程序调试方法;

(4)培养学生分析、解决问题的能力;

(5)提高学生的科技论文写作能力。

2.课程设计的任务及要求

职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

试设计一职工信息管理系统,使之能提供以下功能:

(1)系统以菜单方式工作

(2)职工信息录入功能--输入

(3)职工信息浏览功能--输出

(4)职工信息查询功能

查询方式:

按学历查询;

按职工号查询;

(5)职工信息删除、修改功能(根据职工号)

(提示:

职工信息可采用结构数组或对象数组存放)

2)创新要求:

(1)利用类的成员函数调用类的数据成员完成系统的工作。

(2)利用面向对象来编写程序。

3)课程设计论文编写要求

(1)要按照书稿的规格打印誊写课程设计报告

(2)论文包括目录、绪论、正文、小结、参考文献、谢辞、附录等

(3)毕业论文装订按学校的统一要求完成

4)答辩与评分标准:

(1)完成原理分析:

20分;

(2)完成设计过程:

30分;

(3)完成调试:

30分;

(4)回答问题:

20分。

5)参考文献:

《c++语言程序设计》(第四版)清华大学出版社

《c++语言程序设计》(第二版)北京邮电大学出版社

XX文库

6)课程设计进度安排

内容天数 地点

构思及程序设计1  实训中心

程序调试1  实训中心

撰写论文1 实训中心

学生签名:

2012年6月4日

课程设计(论文)评审意见

(1)完成原理分析(20分):

优( )、良( )、中( )、一般( )、差( );

(2)设计分析  (30分):

优( )、良( )、中( )、一般( )、差( );

(3)完成调试  (30分):

优( )、良( )、中( )、一般( )、差( );

(4)回答问题  (20分):

优( )、良( )、中( )、一般( )、差( );

(5)综合等级:

 

评阅人:

   职称:

2012年6月10日

目 录

一、课程设计任务概述

二、各功能模块的具体实现

三、程序清序

四、程序调试与运行结果

五、设计心得(小结)

六、参考文献

一、课程设计任务概述

职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。

试设计一职工信息管理系统,使之能提供以下功能:

(1)系统以菜单方式工作

(2)职工信息录入功能--输入

(3)职工信息浏览功能--输出

(4)职工信息查询功能

查询方式:

按学历查询;

按职工号查询;

(5)职工信息删除、修改功能(根据职工号)

(提示:

职工信息可采用结构数组或对象数组存放)

主要由worker类中的成员函数来完成对数据成员num(工号),name(姓名),sex(性别),edu(学历),adress(地址),tel(电话),age(年龄),salary(薪水)的操作来实现系统的运行。

系统以菜单方式运行。

成员函数主要如下:

要求:

达到熟练掌握C++语言的基本知识和技能;

基本掌握面向对象程序设计的基本思路和方法;

能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。

二、各功能模块的具体实现

(功能模块总图、设计思路、各个类及函数的具体实现等,此部分内容为报告的重点,尽可能详细)

1)先声明员工结构,该结构中包含编号、姓名、出生年月、性别、联系电话、基本工资等成员变量,并定义worker结构数组;

2)编写主函数,要求提供一界面,允许工作人员输入、修改和删除员工信息;

3)给出某员工编号,可对该员工信息进行查找,若找到,显示相应信息,否则显示“该员工不存在”;

三、程序清序

usingnamespacestd;

#defineN100//N作为最大职工总数

intNUM=0;//用来计算职工数目

stringp;//p作为接收菜单选项的字符串

classworker

{

public:

worker(){}

voidmenu();//显示菜单

voidadd();//职工信息录入

voidshow();//职工信息显示

voidsearch();//职工信息查找

voiddele();//职工信息删除

voidmodify();//职工信息修改

~worker(){}

private:

stringnum,name,sex,edu,address,tel;

intage,salary;

};

workerw[N];

voidworker:

:

menu()//主菜单函数实现

{

cout<<""<

cout<<"职工信息管理系统主菜单"<

cout<<""<

cout<<"1.职工信息添加"<

cout<<"2.职工信息修改"<

cout<<"3.职工信息删除"<

cout<<"4.职工信息查找"<

cout<<"5.职工信息显示"<

cout<<"0.退出"<

cout<

cout<<"请选择数字编号0~5"<

inti1;

cin>>i1;

while(!

(i1>=0&&i1<=5))

{

cout<<"输入有误,请重新输入:

"<

cin>>i1;

}

switch(i1)

{

case1:

add();break;

case2:

modify();break;

case3:

dele();break;

case4:

search();break;

case5:

show();break;

case0:

cout<<"系统退出!

"<

exit(0);

default:

break;

}

}

voidworker:

:

add()//职工信息添加函数实现

{

cout<<"请输入职工信息:

"<

cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t电话"<

stringnum;

cin>>num;

for(inti=0;i

while(num==w[i].num)

{

cout<<"此职工编号已存在,请重新输入:

"<

cin>>num;

}

w[NUM].num=num;

cin>>w[NUM].name>>w[NUM].sex>>w[NUM].edu>>w[NUM].age>>w[NUM].salary>>w[NUM].address>>w[NUM].tel;

++NUM;

cout<<"是否返回主菜单?

Y/N"<

cin>>p;

while

(1)

{

if(p=="y"||p=="Y")

{

menu();

}

elseif(p=="n"||p=="N")

{cout<<"系统退出!

"<

exit(0);

}

else

{

cout<<"输入有误,请重新输入:

";

cin>>p;

}

}

}

voidworker:

:

show()//显示职工信息函数实现

{

cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t电话"<

for(inti=0;i

cout<

cout<

}

voidworker:

:

modify()//职工信息修改函数实现

{

if(NUM<=0)

{

cout<<"没有职工信息存入,系统将返回主菜单"<

menu();

}

else

{cout<<"职工信息如下:

"<

cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t电话"<

for(inti=0;i

cout<

}

cout<<"请输入需要修改信息职工的工号:

"<

stringnum1;

cin>>num1;

intj=0,k;

intflag=1;

while(flag)

{

for(;j

{

if(num1==w[j].num)

{

flag=0;

k=j;

break;

}

}

if(flag)

{

cout<<"不存在此员工,请重新输入:

"<

j=0;

cin>>num1;

}

}

cout<<"你选择的职工的信息为:

"<

cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t电话"<

cout<

cout<<"1.修改工号"<

cout<<"2.修改姓名"<

cout<<"3.修改性别"<

cout<<"4.修改学历"<

cout<<"5.修改年龄"<

cout<<"6.修改工资"<

cout<<"7.修改地址"<

cout<<"8.修改电话"<

cout<<"0.返回主菜单"<

cout<

cout<<"请选择数字编号0~8"<

inti3;

cin>>i3;

while(i3<0||i3>8)

{

cout<<"输入有误,请重新输入:

"<

cin>>i3;

}

switch(i3)

{

case1:

cout<<"请输入新的职工工号:

";

cin>>w[k].num;

cout<<"修改信息已保存,现返回主菜单:

"<

menu();

break;

case2:

cout<<"请输入新的职工姓名:

";

cin>>w[k].name;

cout<<"修改信息已保存,现返回主菜单:

"<

menu();

break;

case3:

cout<<"请输入新的职工性别:

";

cin>>w[k].sex;

cout<<"修改信息已保存,现返回主菜单:

"<

menu();

break;

case4:

cout<<"请输入新的职工学历:

";

cin>>w[k].edu;

cout<<"修改信息已保存,现返回主菜单:

"<

menu();

break;

case5:

cout<<"请输入新的职工年龄:

";

cin>>w[k].age;

cout<<"修改信息已保存,现返回主菜单:

"<

menu();

break;

case6:

cout<<"请输入新的职工工资:

";

cin>>w[k].salary;

cout<<"修改信息已保存,现返回主菜单:

"<

menu();

break;

case7:

cout<<"请输入新的职工地址:

";

cin>>w[k].address;

cout<<"修改信息已保存,现返回主菜单:

"<

menu();

break;

case8:

cout<<"请输入新的职工电话:

";

cin>>w[k].tel;

cout<<"修改信息已保存,现返回主菜单:

"<

menu();

break;

case0:

menu();

default:

break;

}

}

voidworker:

:

search()

{

if(NUM<=0)

{

cout<<"没有职工信息存入,系统将返回主菜单"<

menu();

}

else

cout<<"请选择查找方式:

"<

cout<<"1.按工号查找"<

cout<<"2.按学历查找"<

cout<<"0.返回主菜单"<

cout<

cout<<"请选择数字编号0~2"<

inti4;

cin>>i4;

while(i4<0||i4>4)

{

cout<<"输入有误,请重新输入:

"<

cin>>i4;

}

if(i4==1)

{

stringnum2;

cout<<"请输入要查询的职工的工号:

"<

cin>>num2;

intj=0,k;

intflag=1;

while(flag)

{

for(;j

{

if(num2==w[j].num)

{

flag=0;

k=j;

cout<<"查询的职工信息如下:

"<

cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t电话"<

cout<

break;

}

}

if(flag)

{

flag=0;

cout<<"不存在此职工!

!

\n返回主菜单"<

break;

}

}

}

elseif(i4==2)

{

stringedu2;

cout<<"请输入要查询的职工的学历:

"<

cin>>edu2;

intj4=0,k4;

intflag4=1;

while(flag4)

{

for(;j4

{

if(edu2==w[j4].edu)

{

flag4=0;

k4=j4;

cout<<"查询的职工信息如下:

"<

cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t电话"<

cout<

break;

}

}

if(flag4)

{

flag4=0;

cout<<"不存在此职工!

!

\n返回主菜单"<

break;

}

}

}

elseif(i4==0)

menu();

}

voidworker:

:

dele()//职工信息删除功能实现

{

if(NUM<=0)

{

cout<<"没有职工信息存入,系统将返回主菜单"<

menu();

}

else

cout<<"职工信息如下:

"<

cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t电话"<

for(inti=0;i

cout<

cout<<"请输入需要删除信息职工的工号:

"<

stringnum3;

cin>>num3;

intj=0,k;

intflag=1;

while(flag)

{

for(;j

{

if(num3==w[j].num)

{

flag=0;

k=j;

break;

}

}

if(flag)

{

cout<<"不存在此员工,请重新输入:

"<

j=0;

cin>>num3;

}

}

cout<<"你选择的职工的信息为:

"<

cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t电话"<

cout<

cout<<"确认请输入Y\t返回主菜单请输入N"<

stringp;

cin>>p;

while

(1)

{

if(p=="y"||p=="Y")

{

cout<<"员工信息已删除!

"<

for(inti=0;i

if(w[i].num==num3)

intj=i;

for(;j<=NUM-1;j++)

w[j]=w[j+1];

NUM--;

break;

}

elseif(p=="n"||p=="N")

{

menu();

}

else

{

cout<<"输入有误,请重新输入:

";

cin>>p;

}

}

}

voidmain()

{w[0].menu();

}

四、程序调试与运行结果

程序运行时,首先出现主界面菜单,由用户进行功能选择,选择不同的数字,进入不同的功能区。

如图所示

选择1,则显示次级菜单,进入职工信息添加界面,如图所示。

选择2,进入职工信息修改菜单

在上一步中选择

(1),进入需要修改的选项

选择3,进入职工信息删除菜单

选择4,进入职工信息查找菜单

选择5,能将职工信息显示在桌面上

选择0,退出

五、设计心得(小结)

1.上机过程中出现的问题及其解决方案

上机调试时总会出现细节性的错误,编译时会出错。

反复发现错误,修正错误。

2.程序中可以改进的地方说明

职工信息管理系统还应该提供更细节的选择菜单,以方便用户的操作。

还有就是提供选择的菜单编号的类型应定义为string类。

现在数字编号是int类型,用户输入字母时虽然会提示出错,但是有时候会造成死循环。

3.经过老师指点,发现程序存在许多不足,但在老师的指点下,一一改正过来了,比如,职工信息的输出就存在很大问题,但最终还是改正了,还有,参数的使用不当,等等很多很难发现的问题。

4.自己动手编一个大一点的程序,真的面临了很多问题,在今后的学习中,要多编程序,锻炼自己,这样才能真正学会编程。

5.课程设计真正培养了我的动手能力以及编程能力,这是一种很好的锻炼。

六、参考文献

[1]《c++语言程序设计》(第四版)清华大学出版社

[2]《c++语言程序设计》(第二版)北京邮电大学出版社

 

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

当前位置:首页 > 幼儿教育 > 育儿理论经验

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

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