学分管理软件C++编程.docx

上传人:b****8 文档编号:9365154 上传时间:2023-02-04 格式:DOCX 页数:17 大小:17.21KB
下载 相关 举报
学分管理软件C++编程.docx_第1页
第1页 / 共17页
学分管理软件C++编程.docx_第2页
第2页 / 共17页
学分管理软件C++编程.docx_第3页
第3页 / 共17页
学分管理软件C++编程.docx_第4页
第4页 / 共17页
学分管理软件C++编程.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

学分管理软件C++编程.docx

《学分管理软件C++编程.docx》由会员分享,可在线阅读,更多相关《学分管理软件C++编程.docx(17页珍藏版)》请在冰豆网上搜索。

学分管理软件C++编程.docx

学分管理软件C++编程

#include

#include

usingnamespacestd;

intp=0;//计数

structScore_sys//定义一个结构体存储学生相关信息

{

doubleid;

charname[20];

structScore//定义一个分数结构体存储各项课程分数

{

intbasic;

intmajor;

intselected;

inthumanities;

intexperiment;

};

Scorescore;

structClass_num//定义一个一个班级结构体

{

intnum;

};

Class_numclassnum;

Score_sys*next;

};

classList

{

Score_sys*head,*tail;

public:

List();

~List();

voidadd();

voidinquire();

voidinquire_cla();

voidchange();

voidcompositor();

};

Score_sysstu[2000];//允许添加2000个学生的信息

//给定某个班级的班号,显示该班所有学生学分完成情况;

List:

:

List()//构造函数实现

{

head=tail=NULL;

}

List:

:

~List()//析构函数实现

{

Score_sys*p;

if(head)//若非空,则删除

{

p=head;

head=head->next;

deletep;//删除,释放空间

}

}

voidList:

:

add()//添加学生信息函数

{

inti;

chars;

cout<

"<

cout<

for(i=p;i<2000;i++)

{

p++;

cout<<"请输入第"<

";

cin>>stu[i].classnum.num;

cout<<"请输入第"<

";

cin>>stu[i].id;

cout<<"请输入第"<

";

cin>>stu[i].name;

cout<<"请输入第"<

";

cin>>stu[i].score.basic;

cout<<"请输入第"<

";

cin>>stu[i].score.major;

cout<<"请输入第"<

";

cin>>stu[i].score.selected;

cout<<"请输入第"<

";

cin>>stu[i].score.humanities;

cout<<"请输入第"<

";

cin>>stu[i].score.experiment;

cout<

cout<

cout<<"继续输入吗?

!

(y/n)";

cin>>s;

if(s=='n')break;

else

if(s=='y')

continue;

else

{

cout<<"输入有误!

!

请重新输入:

";

break;

}

}

}

voidList:

:

inquire()//查询学生信息

{

chars;

intj;

doublek;

do{

cout<

"<

cout<<"请输入该学生的学号:

";

cin>>k;

for(j=0;j<2000;j++)

{

if(k==stu[j].id)

{

cout<<"这是系统中存储的第"<

cout<<"他所在班级:

"<

cout<<"该学生名字为:

"<

cout<<"该学生的基础课学分为:

"<

cout<<"该学生的专业课学分为:

"<

cout<<"该学生的选修课学分为:

"<

cout<<"该学生的人文类课程学分为:

"<

cout<<"该学生的实验性课程学分为:

"<

cout<

"<

/*-------------------判断学生学分的情况---------------*/

if(stu[j].score.basic<50)

cout<<"基础课学分未完成"<

else

cout<<"基础课学分完成"<

if(stu[j].score.major<50)

cout<<"专业课学分未完成"<

else

cout<<"专业课学分完成"<

if(stu[j].score.selected<24)

cout<<"选修课学分未完成"<

else

cout<<"选修课学分完成"<

if(stu[j].score.selected<8)

cout<<"人文类课程学分未完成"<

else

cout<<"人文类课程学分完成"<

if(stu[j].score.selected<20)

cout<<"实践性课程学分未完成"<

else

cout<<"实践性类课程学分完成"<

break;

}

elsecout<<"无该生信息"<

}

cout<

cout<<"继续查询吗?

!

(y/n)";

cin>>s;

if(s=='n')

break;

}while(s=='y');

}

voidList:

:

inquire_cla()

{

chars;

intn,j,i;

do

{

i=1;

cout<<"本操作为显示某个班级所有的学生学分完成情况!

"<

cout<

";

cin>>n;

for(j=0;j

{

if(n==stu[j].classnum.num)

{

cout<<"这个班第"<

"<

cout<<"这个班第"<

"<

cout<<"这个班第"<

"<

cout<<"这个班第"<

"<

cout<<"这个班第"<

"<

cout<<"这个班第"<

"<

i++;

continue;

}

}

cout<

cout<<"继续查询吗?

!

(y/n)";

cin>>s;

if(s=='n')

break;

}

while(s=='y');

}

//给定某位学生的学号,修改该学生的学分信息;

voidList:

:

change()

{

inti,j;

chars;

doublen;

do

{

cout<

"<

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

";

cin>>n;

for(j=0;j

{

if(n==stu[j].id)

{

cout<<"这是系统中存储的第"<

cout<<",他所在班级为:

"<

cout<<"该名学生名字为:

"<

cout<<"该名学生的基础课学分为:

"<

cout<<"该名学生的专业课学分为:

"<

cout<<"该名学生的选修课学分为:

"<

cout<<"该名学生的人文类课程学分为:

"<

cout<<"该名学生的实验性课程学分为:

"<

/*-------------------判断修改学生学分---------------*/

do

{

cout<<"*****************************************"<

cout<<"*子菜单*"<

cout<<"*1.--------修改基础课学分-----------*"<

cout<<"*2.--------修改专业课学分-----------*"<

cout<<"*3.--------修改选修课学分-----------*"<

cout<<"*4.--------修改人文类课程学分-------*"<

cout<<"*5.--------修改实验性课程学分-------*"<

cout<<"*6.--------不做修改(退出)-----------*"<

cout<<"*****************************************"<

cout<<"请输入你想要操作(1、2、3、4、5、6):

";

cin>>i;

switch(i)

{

case1:

cout<<"基础学分修改为:

";cin>>stu[j].score.basic;break;

case2:

cout<<"专业学分修改为:

";cin>>stu[j].score.major;break;

case3:

cout<<"选修学分修改为:

";cin>>stu[j].score.selected;break;

case4:

cout<<"人文类课程学分修改为:

";cin>>stu[j].score.humanities;break;

case5:

cout<<"实验性课程学分修改为:

";cin>>stu[j].score.experiment;break;

}

}

while(i!

=6);

/*-------------------判断修改学生学分---------------*/

}

}

cout<

cout<<"继续修改吗?

!

(y/n)";

cin>>s;

if(s=='n')

break;

}

while(s=='y');

}

voidList:

:

compositor()

{

inta,i,j,max;

do

{

cout<<"请输入需要排序的科目";

cout<<"*****************************************"<

cout<<"*子菜单*"<

cout<<"*1.--------排序基础课学分-----------*"<

cout<<"*2.--------排序专业课学分-----------*"<

cout<<"*3.--------排序选修课学分-----------*"<

cout<<"*4.--------排序人文类课程学分-------*"<

cout<<"*5.--------排序实验性课程学分-------*"<

cout<<"*6.--------不做排序(退出)-----------*"<

cout<<"*****************************************"<

cout<<"请输入你想要操作(1、2、3、4、5、6):

";

cin>>a;

if(a==1)

{for(i=0;i

{

max=i;

for(j=i+1;j

{

if(stu[j].score.basic>stu[max].score.basic)

max=j;

}

if(i!

=max)

{

Score_systemp;

temp=stu[i];

stu[i]=stu[max];

stu[max]=temp;

}

}

for(i=0;i

{

cout<

"<

}

else

if(a==2)

{for(i=0;i

{

max=i;

for(j=i+1;j

{

if(stu[j].score.major>stu[max].score.major)

max=j;

}

if(i!

=max)

{

Score_systemp;

temp=stu[i];

stu[i]=stu[max];

stu[max]=temp;

}

for(i=0;i

cout<

"<

}

}

else

if(a==3)

{

for(i=0;i

{

max=i;

for(j=i+1;j

{

if(stu[j].score.selected>stu[max].score.selected)

max=j;

}

if(i!

=max)

{

Score_systemp;

temp=stu[i];

stu[i]=stu[max];

stu[max]=temp;

}

for(i=0;i

cout<

"<

}

}

else

if(a==4)

{

for(i=0;i

{

max=i;

for(j=i+1;j

{

if(stu[j].score.humanities>stu[max].score.humanities)

max=j;

}

if(i!

=max)

{

Score_systemp;

temp=stu[i];

stu[i]=stu[max];

stu[max]=temp;

}

for(i=0;i

cout<

"<

}

}

else

if(a==5)

{

for(i=0;i

{

max=i;

for(j=i+1;j<2000;j++)

{

if(stu[j].score.experiment>stu[max].score.experiment)

max=j;

}

if(i!

=max)

{

Score_systemp;

temp=stu[i];

stu[i]=stu[max];

stu[max]=temp;

}

for(i=0;i

cout<

"<

}

};

break;

}

while(a!

=6);

}

//----------------------------------

//给定某位学生的学号,修改该学生的学分信息;

voidmain()

{

inti;

cout<<"**********************************************"<

cout<<"*主菜单*"<

cout<<"*1.--------新增学生信息*"<

cout<<"*2.--------查询单个学生信息*"<

cout<<"*3.--------查询班级全部学生信息*"<

cout<<"*4.--------修改学生信息*"<

cout<<"*5.--------按照某类课程的学分高低进行排序*"<

cout<<"*6.--------退出*"<

cout<<"**********************************************"<

cout<<"请输入你想要操作:

"<

intflag=1;

ListTXL;

while(flag)

{

cin>>i;

switch(i)

{

case1:

TXL.add();break;

case2:

TXL.inquire();break;

case3:

TXL.inquire_cla();break;

case4:

TXL.change();break;

case5:

TXL.compositor();break;

case6:

flag=0;break;

}

}

}

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

当前位置:首页 > 高中教育 > 英语

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

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