c++课程设计之学生选修课程系统设计之令狐文艳创作

  • 格式:doc
  • 大小:70.51 KB
  • 文档页数:21

下载文档原格式

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

《C++程序设计》课程设计报告

令狐文艳

学生选修课程系统设计

一、需求分析

计算机技术作为信息化的核心技术受到全社会的普遍重视。如今,计算机的使用也已不再局限于科学计算,它已进入人类社会的各个领域并发挥着越来越重要的作用。深入掌握计算机专业知识、具有良好系统设计与分析能力的计算机高级专业人才在社会上深受欢迎。而系统设计与分析能力的培养需要通过实践训练才能获得。通过计算机对一些系统的管理已经成为一种系统、便捷的方式。本课程设计就是用C++设计学生选课系统的问题,实现对学生选课的管理操作。

本课程设计的目的是设计一个学生选修课程系统的程序,用来实现对学生成绩的管理,其中包括学生信息的文件读入、添加、查询、保存、删除以及相应的课程信息管理。程序设计了两个类,其中一个包含学生的学号、姓名、选课数以及选修总学分,另一个则包含了课程的信息,包括课程编号、课程名称、课程性质、课时等等。然后通过数组、向量、集合等来实现学生选课信息的记录、保存,删除等相关操作从而达到管理学生选课的。

二、设计要求

假定有n门课程,每门课程有课程编号、课程名称、课程性质、总学时、授课学时、实验学时、学分、开课学期等信息。学生可以按要求(如每个学生总学分不得少于20、没学期不能超过3门课程,每门课程不得超过50个人,但不能少于10否则该课程不开设)自由选课。使之能提供一些功能:

1)课程信息录入功能

2)课程信息浏览功能

3)查询功能:(按课程性质查询、按课程学分查询,查询每

个学生的选修信息、查询每门课程的选修信息等)

4)学生选修课程

5)修改课程或选课信息(根据课程编号或名称修改课程信

息、根据学生姓名修改选课信息);

6)删除课程或选课信息(根据课程编号或名称删除课程信

息、根据学生姓名删除选课信息);

三、总体设计

我们设计一个程序对学生选课信息进行保存,对学生的选课信息进行可执行操作,如添加、删除、查询等等。

该程序包括以下功能模块:

1)学生信息添加模块:能够输入学生基本信息并保存到文件

中。

2)查看模块:显示所有可选修课程的信息。

3)查询:显示所有符合要求的课程信息。

4)选课:显示学生已选课程信息和选课,删除已选课程信

息。

5)退出系统。

为了完善系统,我们还添加了一个登录界面。考虑到添加课程信息的功能只适合老师,因此我们设置了添加课程的权限设置(必须输入密码)。我们建立了两个文件用来保存学生信息和课程信息。(student.txt和subject.txt)

该系统功能说明:

1)系统以菜单方式工作

2)课程信息录入功能(课程信息用文件保存)--输入

3)课程信息浏览功能--输出

4)查询功能:(至少一种查询方式)--算法

5)按学分查询

6)按课程性质查询

7)学生选修课程(可选项)

四、详细设计

该成序包含的主要函数功能说明:

void XuanKeMenu(); // 选课主菜单函数

int find(int no);

void Save();

void DL();//登录界面的函数

void MainMenu();

void output();

void Load(); //载入文件信息的函数void Load2();

void quit();

void add();

void ChaXun();

void chaxun1();

void chaxun2();

void xuanke();

void tq1(); //提取选课编号的函数

void tq2();

void AddStuInfo();//添加学生信息的函数

void SaveStuInfo(); //保存学生信息到文件中

void del();//删除已选课程信息的函数

#include

#include

#include

#include

#include

#define N 10

using namespace std;

int F;

class subject //建立一个课程类,保存课程信息

{

public:

int num;

char name[30];

char cha[20];

int Time,time1,time2,xf;

char kkxq[20];

}S;

class student //建立一个学生类,保存学生信息

{

public:

char nam[10];

char num[15];

int zxf;

int cnt;

}Stu;

vector v; //声明一个指向课程信息的向量

vector z; //声明一个指向学生信息的向量

set T; //建立一个集合

vector > TT; //建立一个向量集合

set ::iterator it; //建立一个迭代器

void XuanKeMenu(); //声明一个选课主菜单函数

int find(int no);

void Save();

void DL(); //声明一个登录界面的函数

void MainMenu();

void output();

void Load(); //声明载入文件信息的函数

void Load2();

void quit();

void add();