基于visualC++的教师工作量管理系统文档格式.docx

上传人:b****3 文档编号:7058868 上传时间:2023-05-07 格式:DOCX 页数:14 大小:26.89KB
下载 相关 举报
基于visualC++的教师工作量管理系统文档格式.docx_第1页
第1页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第2页
第2页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第3页
第3页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第4页
第4页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第5页
第5页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第6页
第6页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第7页
第7页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第8页
第8页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第9页
第9页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第10页
第10页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第11页
第11页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第12页
第12页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第13页
第13页 / 共14页
基于visualC++的教师工作量管理系统文档格式.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于visualC++的教师工作量管理系统文档格式.docx

《基于visualC++的教师工作量管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《基于visualC++的教师工作量管理系统文档格式.docx(14页珍藏版)》请在冰点文库上搜索。

基于visualC++的教师工作量管理系统文档格式.docx

班级数目单个教学任务总课时

21.5*(理论课时+实验课时)

32*(理论课时+实验课时)

>

=42.5*(理论课时+实验课时)

(2)计算一个教师一个学期总的教学工作量。

总的教学工作量=

所有单个教学任务总课时之和。

(3)教师数据查询:

提示:

输入教师号或其他信息,即读出所有数据信息,并显示出来。

教师综合信息输出C、

输出教师信息到屏幕。

(总分之后的列要用程序语句计算)

2、简易学生成绩管理程序程序概要设计:

(1)系统模块层次结构图:

(2)主模块算法流程:

“开始”?

“输出菜单及提示信息”?

“输入选择”?

“输入学生成绩”?

“分课程等级”?

“添加某学生信息”?

“查找某学生信息”?

“修改某学生信息”?

“按指定顺序排序链表”?

“回收链表的内存”?

“交换两个结点的内容”?

“退出系统”。

(3)全局变量或数据结构说明:

#include<

iostream>

fstream>

string>

structItem//保存学生信息的结构体,附加链表链接指针

structTemp//保存学生信息的结构体,用于记录到文件

voidnumberOfRank(Item*p)//计算课程等级情况的函数

Item*Create()//创建链表

voidaddAItem(Item*head)//添加一个学生信息,加到链表的末尾

voidsearchTheItem(Item*head,chars[10])//查找学生信息,参数指定的是学号或者姓名voidsearchTheItem(Item*head,intnumberOfA,intnumberOfB,intnumberOfC,intnumberOfD)//重载,按课程等级查找

voidfreshTheItem(Item*head,chars[10])//修改学生信息

Item*deleteTheItem(Item*h,chars[10])//删除某学生的信息

voidmemoryTheInformation(Item*head)//存储链表到文件,下次可以使用voidcreateFromHighToLow(Item*head)//按总成绩从高到低排序链表

voidcreateFromHighToLow(Item*head,intx)//重载,按每一单科从高到低排序链表voidDel(Item*head)//回收链表的内存

voidchange(Item*a,Item*b)//交换两个结点的内容

(4)程序开发和运行的环境:

VisualC++6.03、简易学生成绩管理程序详细设计及系统功能实现:

(1)详细设计:

#include<

stdio.h>

iomanip>

usingnamespacestd;

structnode//定义课程情况的存储结构{

stringTitle;

//课程名称(字符串型)

intClass_number,Class[40];

//班级数目以及班级(整型)

doubleTheory,Experiment,Single_summary;

//理论课时实验课时以及该门课的教学任务总课时(浮点型)

};

structdata//定义教师信息存储结构{

stringID,Name,Sex,Position;

//教师号教师名称性别职称(字符串型)

nodeCourse[10];

//教师所教课程具体信息(可以是多门课程)

intCourse_number;

//教师所教课程数目(整型)

doubleSummary;

//教师一个学期总的教学工作量(浮点型)}Teacher[2000];

//用数组存储教师信息

voidInput()//输入教师信息

{

inti,j,m,n,k;

doublemm;

k=0;

while(Teacher[k].ID!

="

"

)k++;

//在存储数组中找出一个空的存储空间来存储输入信息

cout<

<

请输入教师ID:

;

cin>

Teacher[k].ID;

//输入教师号

endl<

请输入教师姓名:

Teacher[k].Name;

//输入教师姓名

请输入教师性别:

Teacher[k].Sex;

//输入教师性别

请输入教师职称:

Teacher[k].Position;

//输入教师职称

请输入共任教几门课程:

Teacher[k].Course_number;

//输入教师任教课程数

Teacher[k].Summary=0;

for(i=1;

i<

=Teacher[k].Course_number;

i++)//循环结构实现任教多门课程的信息录入

请输入第"

门课程名称:

Teacher[k].Course[i].Title;

请输入该门课程共教几个班:

Teacher[k].Course[i].Class_number;

请输入该门课程所教班级:

for(j=1;

j<

=Teacher[k].Course[i].Class_number;

j++)

Teacher[k].Course[i].Class[j];

请输入该门课程的理论课时:

Teacher[k].Course[i].Theory;

请输入该门课程的实验课时:

Teacher[k].Course[i].Experiment;

switch(Teacher[k].Course[i].Class_number)//----------------------------------------------------------------------------

case

1:

mm=1*(Teacher[k].Course[i].Theory+Teacher[k].Course[i].Experiment);

break;

2:

mm=1.5*(Teacher[k].Course[i].Theory+Teacher[k].Course[i].Experiment);

case3:

mm=2*(Teacher[k].Course[i].Theory+Teacher[k].Course[i].Experiment);

//计算该门课程的教学任务总课时

}

if(Teacher[k].Course[i].Class_number>

3)

mm=2.5*(Teacher[k].Course[i].Theory+Teacher[k].Course[i].Experiment);

Teacher[k].Course[i].Single_summary=mm;

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

Teacher[k].Summary+=Teacher[k].Course[i].Single_summary;

//累计教师一学期总的教学工作量

voidOutput(intx)//输出教师信息

inti,j;

教师号:

Teacher[x].ID<

endl;

教师姓名:

Teacher[x].Name<

教师性别:

Teacher[x].Sex<

教师职称:

Teacher[x].Position<

i<

=Teacher[x].Course_number;

i++)

setprecision

(2);

所教的第"

门课程为:

Teacher[x].Course[i].Title<

共有理论课时为"

Teacher[x].Course[i].Theory<

小时"

共有实验课时为"

Teacher[x].Course[i].Experiment<

分别给以下班级上课:

=Teacher[x].Course[i].Class_number;

j++)cout

Teacher[x].Course[i].Class[j]<

"

该门课教学任务总课时为:

Teacher[x].Course[i].Single_summary<

一学期总的教学工作量为:

Teacher[x].Summary<

}

voidOutput_all()

inti;

for(i=0;

=1999;

i++)//循环查找记录数组,找出非空区间输出教师信息

if(Teacher[i].ID!

){Output(i);

intFind()//查看教师信息~~~

stringst;

请输入所要寻找的教师姓名(或ID):

st;

i++)//利用循环结构根据教师姓名(或者教师号)查找教师信息

if(st==Teacher[i].ID||st==Teacher[i].Name)

Output(i);

return0;

对不起,没有您要查找的教师或者您的输入信息有误,请核对您的输入~"

voidDelete()//删除教师信息~

请输入您要删除的教师姓名或教师号:

if(Teacher[i].Name==st||Teacher[i].ID==st)break;

if(Teacher[i].Name==st||Teacher[i].ID==st)//如果找到目标信息,执行删除命令

{Teacher[i].ID="

Teacher[i].Name="

elsecout<

对不起,未找到您要删除的教师信息,请核对您的输入!

voidChange_name(intx)//更改教师姓名

请输入新姓名:

Teacher[x].Name=st;

修改成功~~~"

voidChange_ID(intx)//更改教师号

请输入新教师号:

Teacher[x].ID=st;

voidChange_sex(intx)//更改教师性别{

Teacher[x].Sex=st;

voidChange_position(intx)//更改教师职称{

请输入新职称:

Teacher[x].Position=st;

voidChange_course(intk)//更改教师授课信息大体过程与输入教师授课信息相似

switch(Teacher[k].Course[i].Class_number)

case1:

mm=Teacher[k].Course[i].Theory+Teacher[k].Course[i].Experiment;

case2:

<

intChange()//教师信息更改菜单{

boolbo;

charch;

请输入您想要修改的教师姓名或教师号:

//输入希望更改的教师姓名(或者教师号)

i++)//根据教师号(或者姓名)查找教师

if(Teacher[i].Name==st||Teacher[i].ID==st)j=1;

else{

对不起,未找到您要修改的教师信息,请核对您的输入!

bo=true;

while(bo)

请输入您要修改的信息:

A(姓名);

B(教师号);

C(性别);

D(职称);

E(任教课程):

//教师信息更改菜单

ch;

//输入更改选项

switch(ch)

case'

A'

:

Change_name(i);

B'

Change_ID(i);

C'

Change_sex(i);

D'

Change_position(i);

E'

Change_course(i);

继续修改请输入1退出请输入0:

bo;

voidwork()//工作菜单

请输入您需要的操作:

A(输入教师信息),B(查找并输出教师信息),C(查找并修改教师信息),D(删除教师信息),E(输出所有教师信息)"

//操作菜单

//输入操作选项

Input();

Find();

Change();

Delete();

Output_all();

main()

boolcool=1;

i++){Teacher[i].ID="

Teacher[i].Name="

}//将教师存储数组置空,方便信息存储判断

while(cool)

work();

继续操作请输入1,退出请输入0"

cool;

(2)调试和运行该程序,即可实现预期的系统功能。

4、遇到的问题和解决的办法:

遇到的问题:

由于该系统程序的开发过程比较细致和复杂,需用到的;

,,各方面的知识都比较多,而初学者对,,,学习特别是其中指针、数组和链表及输入流与输出流等比较陌生,且难以灵活运用,因而我们团队在整个开发过程经历一段很长的时间,且难以让其一次性地准确地调试和运行。

解决的办法:

更深入地查阅,,,基础教材和实践教材,并向同学寻

求一定的帮助,最终使其顺利地运行。

、总结:

由于对较为复杂的系统程序不能很灵活地开发,在整个过程中遇到了不少的困难;

但整个实践过程使我们在C++编程方面有了更好的了解,同时在程序开发方面的能力得到了一定的提高,而且还增强了我们对于各种实践的兴趣。

整个实践过程让我们认识到:

勤奋与实践最能挺升自身的能力。

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

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2