课程设计选题管理系统设计Word下载.docx

上传人:b****5 文档编号:19506231 上传时间:2023-01-07 格式:DOCX 页数:36 大小:339.45KB
下载 相关 举报
课程设计选题管理系统设计Word下载.docx_第1页
第1页 / 共36页
课程设计选题管理系统设计Word下载.docx_第2页
第2页 / 共36页
课程设计选题管理系统设计Word下载.docx_第3页
第3页 / 共36页
课程设计选题管理系统设计Word下载.docx_第4页
第4页 / 共36页
课程设计选题管理系统设计Word下载.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

课程设计选题管理系统设计Word下载.docx

《课程设计选题管理系统设计Word下载.docx》由会员分享,可在线阅读,更多相关《课程设计选题管理系统设计Word下载.docx(36页珍藏版)》请在冰豆网上搜索。

课程设计选题管理系统设计Word下载.docx

可显示当前系统中所有学生的信息和课程设计题目信息,每条记录占据一行。

(4)编辑功能:

可根据查询结果对相应的记录进行修改,修改时注意学号的唯一性。

(5)删除功能:

主要实现对已添加的学生和课程设计题目记录进行删除。

如果当前系统中没有相应的记录,则提示“记录为空!

”并返回操作。

(6)统计功能:

能根据多种参数进行统计。

能按课程设计题目名称统计出学生选择该题目的人员的信息。

(7)保存功能:

可将当前系统中各类记录存入文件中,存入方式任意。

(8)读取功能:

可将保存在文件中的信息读入到当前系统中,供用户进行使用。

工作内容及时间进度安排

1.6月4日~10日:

布置任务,软件设计;

2.6月11日~18日:

编写代码,上机调试;

3.6月19、20、21日:

软件验收,撰写课程设计报告;

4.各班在6月22日下午五点前将课程设计报告收齐并上交。

课程设计成果

1.课程设计报告

2.源程序代码

摘要在当前的各大高校课程设计选题管理系统中,为了方便管理、查询、修改与统计相关信息,一般都会将学生、课程设计题目等信息进行编号存储,所以就必须拥有一套完善的并且适合自身特点的信息化管理系统,以实现对冗杂的课程设计题目信息与学生信息的管理目的,还可以提高效率,方便同学们选题。

本文利用Microsoft的VisualC++6.0(类和函数,数组,对象等)编写程序,实现了用户对课程设计选题的管理操作。

本系统主要有八个功能模块:

包括添加、查询、显示、修改、删除、统计、保存、读取等功能。

已经过全面的系统测试,能够很好的运行,达到了预期设计预想。

关键词:

系统设计类函数数组文件操作

摘要1

第一章绪论1

1.1课程设计的目的1

1.2课程设计的背景和意义1

1.2.1课程设计的背景1

1.2.2课程设计的意义1

1.3课程设计环境1第二章需求分析2

2.1问题描述2

2.2功能要求2

2.3问题的解决方案2第三章系统设计3

3.1数据设计3

3.1.1类设计3

3.1.2函数设计3

3.2结构设计3

3.2.1系统流程图3

3.2.2界面设计4第四章系统实现5

4.1类实现5

4.2函数实现5

4.3主函数实现14第五章系统测试16

5.1模块测试16

5.2课程设计过程中遇到的问题总结22致谢22参考文献23附录24

第一章绪论

1.1课程设计的目的

(1)要求学生能够熟练掌握C++语言的基本知识和技能。

(2)基本掌握面向对象程序设计的基本思路和方法。

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

1.2课程设计的背景和意义

1.2.1课程设计的背景

1.理论研究基础

(1)运用面向对象(类和对象)的机制来实现系统功能。

(2)建立清晰的类与函数之间的关系,学会对函数调用的熟练使用。

2.技术层面的支持

MicrosoftVisualC++6.0

MicrosoftVisualstudio2010

1.2.2课程设计的意义

通过此次课程设计,清晰的掌握C++语言的基本知识并能熟练的应用进行编程。

1.3课程设计环境

软件:

WindowsXP、windows7系统,

MicrosoftVisualStudio2010,

MicrosoftVisualC++6.0编译器。

硬件:

戴尔双核处理器,2G内存,512独立显卡,80G硬盘。

宏基双核处理器,2G内存,1G独立显卡,500G硬盘。

第二章需求分析

2.1问题描述

课程设计题目包括:

编号、名称、关键词、实现技术、人员数(由几个人来完成)等信息。

学生信息包括:

2.2功能要求

程序能够添加学生的记录和课程设计题目记录,提供选择界面供用户选择所要添加的类别。

如果添加了重复记录,则提示数据添加重复并取消添加。

可根据学号、姓名、编号、名称等信息对已添加的学生和课程设计题目进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。

可显示当前系统中所有学生的信息和课程设计题目信息,每条记录占据一行。

(4)编辑功能:

可根据查询结果对相应的记录进行修改,修改时注意学号的唯一性。

(5)删除功能:

如果当前系统中没有相应的记录,则提示“记录为空!

能按课程设计题目名称统计出学生选择该题目的人员的信息。

(8)读取功能:

可将保存在文件中的信息读入到当前系统中,供用户进行使用

2.3问题的解决方案

根据系统功能要求,可以将问题解决分为以下步骤:

(1)应用系统分析,建立该系统的功能模块框图以及界面的组织和设计;

(2)分析系统中的各个实体及它们之间的关系;

(3)根据问题描述,设计系统的类层次;

(4)完成类层次中各个类的描述;

(5)完成类中各个成员函数的定义;

(6)完成系统的应用模块;

(7)功能调试;

(8)完成系统总结报告。

第三章系统设计

3.1数据设计

3.1.1类设计

定义一个学生类Student,类中包括学号stuid,姓名stuname,性别sex,年龄age,班级clas,专业specialty,及所选课程的课程编号couid,课程名称couname,关键词keyword,实现技术technology;

定义一个管理类Guanli,其成员函数包括向文件输入函数voidwrite(intn);

从文件读取函数,intread();

添加学生信息函数voidadd(),查询信息函数voidsearch(),按学号查询函数voidsearchsid(),按姓名查询函数voidsearchsname(),按题目编号查询函数voidsearchcid(),按题目名称查询函数voidsearchcname();

修改信息函数voidalter();

删除信息函数voiddel();

统计信息函数voidtotal();

显示函数voiddisplay()以及一个数据成员Studentstu[50]。

3.1.2函数设计

voidwrite(intn),向文件中写入数据,打开文本文档,并将数据输入到文本文档中;

intread(),向文件中写入数据从文件中读数据,打开文本文档,并将文本文档中的数据输出;

voidadd(S),添加学生信息;

voidsearch()查询信息(可根据学生的学号、姓名、所选课程编号、课程名称进行信息查询);

voidalter(),修改学生信息;

voiddel()删除学生信息,根据输入的学生学号通过调用函数实现;

voidtotal(),统计学生信息(根据学生所选课程名称进行统计);

voiddisplay(),显示函数用来显示所有学生信息;

intmain()主函数,显示主菜单,调用各个函数实现所有功能。

3.2结构设计

3.2.1系统流程图

课程设计学生选课系统设计结构图:

进入功能界面后,可以进行多项功能选择,如添加、查询、显示、修改、删除、统计,将数据写入文件以及从文件读取数据等;

而查询功能又可以分为按学号、姓名、题目编号、题目名称等方式进行查询。

如图3-1示。

主菜单

图3-1课程设计学生选课系统设计结构图

3.2.2界面设计

主界面是“欢迎使用课程设计选课系统”,下面是所要使用的功能:

1.添加新的纪录

2.查询记录信息

3.修改学生信息

4.删除学生信息

5.统计所有记录

6.显示所有记录

0.退出系统其中,查询记录又可以弹出一个界面分别有以下几个功能:

(1).根据学号查询

(2).根据姓名查询

(3).根据编号查询

(4).根据题目名称查询每实现一个功能,重新弹出主界面,进行下一个的功能选择。

第四章系统实现

4.1类实现

4.2函数实现

voidGuanli:

:

write(intn){

fstreammyfile;

my("

student.txt"

ios:

out|ios:

binary);

if(!

myfile)

{cout<

<

"

该文件不能打开!

endl;

abort();

}

intcount=n;

myfile<

count<

endl<

for(inti=0;

i<

=count;

i++)

{

myfile<

stu[i].stuid<

"

stu[i].stuname<

stu[i].sex<

stu[i].age<

stu[i].clas<

stu[i].specialty<

stu[i].couid<

stu[i].couname<

stu[i].keyword<

stu[i].technology<

my();

intGuanli:

read()

my("

in|ios:

if(!

intcount;

my(0);

myfile>

>

count;

stu[i].stuid>

stu[i].stuname>

stu[i].sex>

stu[i].age>

stu[i].clas>

stu[i].specialty>

stu[i].couid>

stu[i].couname>

stu[i].keyword>

stu[i].technology;

cout<

returncount;

add()

intn=read();

inti=0;

charsign;

请输入增加的学生的相关信息:

while(sign!

='

N'

loop:

cout<

学号:

;

cin>

stu[i].stuid;

cout<

endl;

intc=0;

while(c<

i)

c++;

if(stu[i].stuid==stu[i-c].stuid)

你输入的学号已经存在!

请重新输入"

gotoloop;

姓名:

stu[i].stuname;

性别:

stu[i].sex;

年龄:

stu[i].age;

班级:

stu[i].clas;

专业:

stu[i].specialty;

题目编号:

stu[i].couid;

题目名称:

stu[i].couname;

关键词:

stu[i].keyword;

实现技术:

提示:

是否继续写入学生信息?

(Y/N)"

sign;

//输入判断i++;

}write(i);

search()

**

(1)根据学号查询**"

**

(2)根据姓名查询**"

**(3)根据编号查询**"

**(4)根据名称查询**"

intc;

Guanlig;

请输入选择:

c;

switch(c)

case1:

g.searchsid();

break;

case2:

g.searchsname();

case3:

g.searchcid();

case4:

g.searchcname();

default:

输入错误,请重新输入!

}g.write(n);

searchsid()

ints;

查找学生信息:

请输入需要查找学生的学号:

cin>

s;

while((stu[i].stuid-s)!

=0&

&

n)i++;

//查找判断if(i==n)

对不起,无法找到该学生的信息!

else

stu[i].stuname<

endl;

stu[i].age<

班级:

stu[i].specialty<

searchsname()

chara[10];

请输入需要查找学生的姓名:

a;

n;

if(strcmp(stu[i].stuname,a)==0){

searchcid()

 

intb;

请输入需要查找的题目编号:

b;

while((stu[i].couid-b)!

对不起,无法找到该信息!

searchcname()

charc[10];

请输入需要查找的题目名称:

i++)if(strcmp(stu[i].couname,c)==0)

alter()

修改学生信息:

请输入需要修改学生的学号:

对不起,无该学生的信息!

!

//输入失败信息

}else{cout<

该学生的信息:

学号"

'

\n'

姓名"

性别"

年龄"

班级"

专业"

题目编号"

题目名称"

关键词"

实现技术"

请重新输入该学生的信息"

stu[i].stuid;

stu[i].stuname;

stu[i].clas;

专业:

stu[i].specialty;

charc;

是否保存数据?

(y/n)"

if(c='

y'

修改成功!

write(n);

del()

inti=0,j;

删除学生信息:

请输入需要删除学生的学号:

//查找判断

if(i==n)

记录为空!

//返回失败信息

for(

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

当前位置:首页 > 教学研究 > 教学反思汇报

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

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