学生管理系统2.docx

上传人:b****7 文档编号:10852598 上传时间:2023-02-23 格式:DOCX 页数:14 大小:223.50KB
下载 相关 举报
学生管理系统2.docx_第1页
第1页 / 共14页
学生管理系统2.docx_第2页
第2页 / 共14页
学生管理系统2.docx_第3页
第3页 / 共14页
学生管理系统2.docx_第4页
第4页 / 共14页
学生管理系统2.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

学生管理系统2.docx

《学生管理系统2.docx》由会员分享,可在线阅读,更多相关《学生管理系统2.docx(14页珍藏版)》请在冰豆网上搜索。

学生管理系统2.docx

学生管理系统2

学生管理系统

ZYZ

2014060103026

题目简述:

用类来实现学生管理。

要注意设计合理的数据成员和成员函数来构成类结构。

在使用字符串作姓名时需要考虑动态存储,从而需要合适的构造函数和析构函数;在考虑各班人数不等时需要考虑使用链式存储。

题目:

设计和实现一个学生管理系统,包括如下功能:

1、学生信息录入;

2、学生信息查询;

3、学生信息修改;

4、学生按照成绩排序;

5、学生成绩分析报告:

每门课程平均分,最高分,最低分,分数段统计;

6、结果存储到文件;

7、一个主菜单选择各项功能

学生信息包括:

姓名,学号,C语言,微积分两门课成绩。

提交实验报告。

格式同作业。

包括问题描述,系统设计,系统实现,系统测试,总结和讨论,程序代码等几个部分。

在设计部分给出模块划分,每个模块一个函数实现,给出函数表,以及每个函数内部变量表,以及程序流程图。

系统设计

Student类

函数功能

voidBring()

学生类的输入

char*OutputName()

输出姓名

intOutputNumber()

输出学号

intOutputMath()

输出微积分的成绩

intOutputC()

输出C语言的成绩

SortScore类

voidBring1(inti);

学生类

voidSort(intn);

进行排序

voidFind(intn);

根据学号查找学生

voidReInput(intn);

更新学生信息

voidAnalysis(intn);

分析学生成绩

voidInput(intn);

输出

程序流程图

系统测试

总结和讨论

类还是不太会用,有些概念仍是不理解,很多方法未掌握,需要努力了,多练习,循序渐进。

完整代码

classstudent

{

private:

charname[18];

intnumber;

doublewegrade;

doublecgrade;

public:

voidBring()

{

cout<<"请输入姓名:

";

cin>>name;

cout<<"请输入学号:

";

cin>>number;

cout<<"请输入微积分成绩:

";

cin>>wegrade;

cout<<"请输入C语言成绩:

";

cin>>cgrade;

cout<<"成功录入";

}

char*OutputName()

{

returnname;

}

intOutputNumber()

{

returnnumber;

}

intOutputMath()

{

returnwegrade;

}

intOutputC()

{

returncgrade;

}

};

管理类:

classarragement

{

private:

studentstu[250];

public:

voidBring1(inti);

voidSort(intn);

voidFind(intn);

voidReInput(intn);

voidAnalysis(intn);

voidoutput(intn);

};

voidarragement:

:

Bring1(inti)

{

stu[i].Bring();

}

voidarragement:

:

Sort(intn)

{

cout<<"微积分的排序\n";

for(inti=1;i<=n;i++)

{

for(intj=1;j

{

if(stu[i].OutputMath()>stu[j].OutputMath())

{

stu[0]=stu[i];

stu[i]=stu[j];

stu[j]=stu[0];

}

}

}

cout<<"微积分成绩排名:

\n";

for(intk=1;k<=n;k++)

{

cout<

}

cout<<"C语言的排序\n";

for(inti=1;i<=n;i++)

{

for(intj=1;j

{

if(stu[i].OutputC()>stu[j].OutputC())

{

stu[0]=stu[i];

stu[i]=stu[j];

stu[j]=stu[0];

}

}

}

cout<<"C语言成绩排名:

\n";

for(intk=1;k<=n;k++)

{

cout<

}

}

voidarragement:

:

Find(intn)

{

intj;

cout<<"请输入你所要查询学生的学号\n";

cin>>j;

for(inti=1;i<=n;i++)

{

if(j==stu[i].OutputNumber())

{

cout<<"该同学姓名:

\n"<

cout<<"该同学学号:

\n"<

cout<<"该同学的微积分成绩:

\n"<

cout<<"该同学的C语言成绩:

\n"<

}

}

}

voidarragement:

:

ReInput(intn)

{

intf;

cout<<"输入修改学生的的学号:

";

cin>>f;

for(inti=1;i<=n;i++)

{

if(stu[i].OutputNumber()==f)

{

stu[i].Bring();

}

}

}

voidarragement:

:

Analysis(intn)

{

doublemaxgrade_we=0.0;

doublemingrade_we=9999;

doublemingrade_c=9999;

doublemaxgrade_c=0.0;

doublesum_we=0.0;

doublesum_c=0.0;

for(inti=1;i<=n;i++)

{

sum_we+=stu[i].OutputMath();

sum_c+=stu[i].OutputC();

if(maxgrade_we

{

maxgrade_we=stu[i].OutputMath();

}

if(mingrade_we>stu[i].OutputMath())

{

mingrade_we=stu[i].OutputMath();

}

if(maxgrade_c

{

maxgrade_c=stu[i].OutputC();

}

if(mingrade_c>stu[i].OutputC())

{

mingrade_c=stu[i].OutputC();

}

}

cout<<"微积分最高分\t"<<"微积分最低分\t"<<"微积分平均分\t"<

cout<

cout<<"c最高分\t"<<"c最低分\t"<<"c平均分\t"<

cout<

}

voidarragement:

:

output(intn)

{

ofstreamx;

x.open("成绩文本输出.txt");

for(inti=1;i<=n;i++)

{

x<<"姓名\t"<<"学号\t"<<"微积分成绩\t"<<"C语言成绩\t"<

x<

}

}

主函数:

intmain()

{

cout<<"---------------欢迎来到学生成绩管理系统-----------------\n";

inti=1;

arragementst;

while

(1)

{

cout<

cout<<"请您选择操作类型\n";

cout<<"1、学生信息录入\n";

cout<<"2、学生信息查询\n";

cout<<"3、学生信息修改\n";

cout<<"4、学生按照成绩排序\n";

cout<<"5、学生成绩分析报告:

每门课程平均分,最高分,最低分\n";

cout<<"6、文本形式的输出\n";

charch;

cin>>ch;

switch(ch)

{

case'1':

st.Bring1(i);

i++;

break;

case'2':

st.Find(i);

break;

case'3':

st.ReInput(i);

break;

case'4':

st.Sort(i-1);

break;

case'5':

st.Analysis(i-1);

break;

case'6':

st.output(i-1);

break;

}

}

return0;

}

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

当前位置:首页 > 人文社科 > 广告传媒

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

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