学生成绩管理系统76294Word文档下载推荐.docx
《学生成绩管理系统76294Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统76294Word文档下载推荐.docx(8页珍藏版)》请在冰豆网上搜索。
八.详细设计·
九.软件测试报告·
参考文献·
学生成绩管理
方翔
某某信息工程大学滨江学院网络工程专业,某某210044
一.设计题目
二.设计目的
通过该题目的设计,掌握软件开发过程的问题分析、系统设计、程序编码、测试等根本方法和技能。
掌握指针或数组、结构体、文件的操作方法。
三.设计内容
输入记录。
对每个学生的学号、某某、班级、数学、英语、计算机成绩进展输入并存储,在程序的运行过程中,数据的存储可以采用结构体数组或者链表,但是最终应该存储在文件中。
维护记录。
能够实现添加、删除、修改学生记录,但是一定要将最终数据存储到文件中。
查询记录。
根据班级、学号、科目等查询学生的成绩。
如果查询时学生数据并没有读入到结构体数组或者链表中,如此应该先从文件中读出数据并存储在结构体数组或者链表中,然后在结构体数组或者链表中查询满足条件的数据。
统计记录。
完成对各门功课最高分和不与格人数的统计。
四.设计要求
实现功能:
输入、输出、插入、删除、查找、追加、读入、显示、保存、拷贝、排序、索引、分类合计、退出。
五.流程图
六.需求分析
1、用数据结构实现系统;
2、对学生信息进展管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出.
3、学生信息包括:
其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能:
(1)、每一条记录包括一个学生的学号、某某、〔至少〕4门课成绩。
(2)、成绩信息录入功能:
(成绩信息用文件保存,可以一次完成假如干条记录的输入。
)
(3)、成绩信息显示浏览功能:
完成全部学生记录的显示。
(4)、查询功能:
完成按某某或学号查找学生记录,并显示。
(5)、成绩信息的删除:
按某某或学号进展删除某学生的成绩.
(6)、排序功能:
按学生学号或总成绩〔从小到大〕进展排序。
(7)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!
六.概要设计
1、成绩录入功能:
承受用户输入的信息,直接显示到list中;
2、成绩输出功能:
即保存,将list中的内容保存到文件中
3、成绩查询功能:
在list中找是否存在
4、删除模块:
在list中找到对象后清空
5、排序功能:
按list中的内容排序重新显示
6、统计功能
7、退出系统
七.详细设计
源程序代码:
voidCZhizhenDoc:
:
Serialize(CArchive&
ar)
{
if(ar.IsStoring())
//TODO:
addstoringcodehere
inti,flag=0,flag1,Class=0;
POSITION*pos=newPOSITION[5+subjectnum];
CStringcs;
cs.Format("
%d"
subjectnum);
ar<
<
cs;
while(flag<
6*(5+subjectnum))
i=0;
while(i<
(5+subjectnum))
pos[i]=List[i+flag].GetHeadPosition();
i++;
}
Class++;
flag1=0;
while(pos[4+subjectnum]!
=NULL)
if(flag1==0)
switch(Class)
case1:
ar<
(CString)"
class1"
;
break;
case2:
class2"
cs=List[i+flag].GetNext(pos[i]);
cs;
cs.Empty();
flag1++;
i=((++i)%(5+subjectnum));
flag+=5+subjectnum;
pos[0]=Subjects.GetHeadPosition();
if(pos[0])
subjectflag"
while(pos[0])
cs=Subjects.GetNext(pos[0]);
else
addloadingcodehere
intc=0,i=0,flag;
ar>
>
subjectnum=atoi(cs);
List=newCStringList[6*(subjectnum+5)];
POSITIONpos;
pos=Subjects.GetHeadPosition();
while(pos!
Subjects.GetNext(pos).Empty();
//清空字符串。
Subjects.RemoveAll();
//移除链表的所有指针。
while(TRUE)
try
if(i==0)
{ar>
}
if(cs=="
{flag=0;
ar>
elseif(cs=="
{flag=1+subjectnum;
elseif(cs=="
subjectnum=0;
while(true)
Subjects.AddTail(cs);
subjectnum++;
Do
List[c+flag].AddTail(cs);
c=((++c)%(5+subjectnum));
}while(c!
=0);
i++;
catch(CArchiveException*e)
if(e->
m_cause!
=CArchiveException:
endOfFile)
throw;
e->
Delete();
九.软件测试报告
〔打开〕
〔按学号查找〕
〔成绩录入〕
〔打开文件〕
〔保存文件〕
〔修改信息〕
参考文献:
1.本年级使用的教材:
数据结构与算法分析〔C++版〕〔第二版〕影印版
2.数据结构与算法,科学,;
赵文静祁飞等编著
3.数据结构-C++语言描述,某某交通大学,,赵文静编著