基于visual C++的教师工作量管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科生课程设计(实践)任务书、设计报告(C/C++ 语言程序设计)
题目教师工作量管理系统设计开发
学生姓名
指导教师
学院
专业班级
学生学号
计算机基础教学实验中心
教师工作量管理系统设计开发摘要:本课程设计是一个实现对教师工作量数据库库进行一定基本操作的程序设计,本课程设计中,程序设计设计语言采用Visual C++,运用数组、指针、函数结构体和各种变量编写程序,程序通过调试运行,基本实现开发目标中管理员查找,修改,添加,删除等功能,经过部分完善后,可以应用在实际教师工作量管理中。
关键词:简易教师工作量管理程序功能需求分析(功能要求),简易学生成绩管理程序概要设计,简易学生成绩管理程序详细设计及系统功能实现,遇到的问题及解决的办法,总结。
1、教师工作量管理系统程序功能需求分析(功能要求):
采用文件和数组(或链表)等建立一个简单的教师工作量管理程序。程序运行时下述班级成绩表格(或其部分内容)在内存中用数组(或链表)表示,假设一学期开设课程不超过10名。程序运行结束时将表格保存到文件中以便下次使用。
要求:
A、教师信息处理
(1) 输入教师授课教学信息,包括教师号、姓名、性别、职称、认教课程、班级、班级数目、理论课时、实验课时。
(2) 插入(修改)教师授课教学信息:
(3) 删除教师授课教学信息:
(4) 浏览教师授课教学信息:
B、教师工作量数据处理:
(1) 计算单个教学任务总课时。计算原则如下表:
(2) 计算一个教师一个学期总的教学工作量。总的教学工作量=所有单个教学任务总课时之和。
(3) 教师数据查询:
提示:输入教师号或其他信息,即读出所有数据信息,并显示出来。
C、教师综合信息输出
提示:输出教师信息到屏幕。
(总分之后的列要用程序语句计算)
2、简易学生成绩管理程序程序概要设计:
(1)系统模块层次结构图:
(2)主模块算法流程:
“开始”→“输出菜单及提示信息”→“输入选择”→“输入学生成绩”→“分课程等级”→“添加某学生信息”→“查找某学生信息”→“修改某学生信息”→“按指定顺序排序链表”→“回收链表的内存”→“交换两个结点的内容”→“退出系统”。
(3)全局变量或数据结构说明:
#include
#include
#include
struct Item//保存学生信息的结构体,附加链表链接指针
struct Temp//保存学生信息的结构体,用于记录到文件
void numberOfRank(Item *p)//计算课程等级情况的函数
Item *Create() //创建链表
void addAItem(Item *head) //添加一个学生信息,加到链表的末尾
void searchTheItem(Item *head,char s[10])//查找学生信息,参数指定的是学号或者姓名
void searchTheItem(Item *head,int numberOfA,int numberOfB,int numberOfC,int numberOfD) //重载,按课程等级查找
void freshTheItem(Item *head,char s[10])//修改学生信息
Item *deleteTheItem(Item *h,char s[10])//删除某学生的信息
void memoryTheInformation(Item *head) //存储链表到文件,下次可以使用
void createFromHighToLow(Item *head)//按总成绩从高到低排序链表
void createFromHighToLow(Item *head , int x)//重载,按每一单科从高到低排序链表
void Del(Item *head)//回收链表的内存
void change(Item *a,Item *b) // 交换两个结点的内容
(4)程序开发和运行的环境:Visual C++ 6.0
3、简易学生成绩管理程序详细设计及系统功能实现:
(1)详细设计:
#include
#include
#include
#include
using namespace std;
struct node // 定义课程情况的存储结构
{
string Title; // 课程名称(字符串型)
int Class_number,Class[40]; // 班级数目以及班级(整型)
double Theory,Experiment,Single_summary; // 理论课时实验课时以及该门课的教学任务总课时(浮点型)
};
struct data // 定义教师信息存储结构
{
string ID,Name,Sex,Position; // 教师号教师名称性别职称(字符串型)
node Course[10]; // 教师所教课程具体信息(可以是多门课程)
int Course_number; // 教师所教课程数目(整型)
double Summary; // 教师一个学期总的教学工作量(浮点型)}Teacher[2000]; // 用数组存储教师信息
void Input() //输入教师信息
{
int i,j,m,n,k;
double mm;
k=0;
while (Teacher[k].ID != "") k++; // 在存储数组中找出一个空的存储空间来存储输入信息
cout <<"请输入教师ID:";
cin >>Teacher[k].ID; // 输入教师号
cout < cin >>Teacher[k].Name; // 输入教师姓名