好知网的团队推出了拍腔开源的在线教育建站系统EduSoho,官网上袭乎衫可以直接下载源代码,可顷哪以直接建类似的在线教学平台站,你可以去看看
太巧了,我们上上个星期做了个C++实践,就是这个题目。哈哈,你太走运了。这个程序挺难写的,我的程序代码如携和下:
#include<iostream.h>
#include<fstream.h>
#include<string>
struct corse
{
char course[10]
int score
}
class Stu
{
int Class
int id
char name[10]
corse p[10]
public:
void getdate(int a,int b,char c[10],char d[10][10],int e[10])
{ int iClass=aid=bstrcpy(name,c)
for(i=0i<10i++)
{ strcpy(p[i].course,d[i])
p[i].score=e[i]}
}
void sortdate()
void output_failor(char a[10])
void output_first5(char a[10])
void output_average(char a[10])
void output_gradelist_ofoneclass(char a[10],int c)
void output()
{int k
cout<<Class<<'\t'<<id<<'辩衡盯\t'<<name<<'\t'
for(k=0k<10k++)
{ if(p[k].score==0)continue
cout<<p[k].course
cout<<"-"<<p[k].score<<'\t'
}
cout<<endl
}
void copy(Stu obj)
{ int i
Class=obj.Class
id=obj.id
strcpy(name,obj.name)
for(i=0i<10i++)
{strcpy(p[i].course,obj.p[i].course)
p[i].score=obj.p[i].score
}
}
}stu[50]
void Stu::output_failor(char a[10])
{ int j(0) ,i
for(i=0i<50i++)
for(j=0j<10j++)
{
if ((strcmp(stu[i].p[j].course,a)==0)&&(stu[i].p[j].score<60))
stu[i].output()
}
}
void Stu::output_first5(char a[10])
{
int i=0, j=0 ,k,l,r(0)
for(i=0i<49i++)
for(j=0j<10j++)
for(k=i+1k<50k++)
for(l=0l<10l++)
{ if ((strcmp(stu[i].p[j].course,stu[k].p[l].course)==0)&&(strcmp(stu[i].p[j].course,a)==0)&&(stu[i].p[j].score<stu[k].p[l].score))
{
Stu m=stu[i]
stu[i].copy(stu[k])
stu[k].copy(m)
}
}
for(i=0i<50i++)
{
for(j=0j<10j++)
if(strcmp(stu[i].p[j].course,a)==0)
{
cout<<stu[i].Class<<'\t'<<stu[i].id<<'\t'<<stu[i].name<<'\t'<<stu[i].p[j].course<<'\t'拦亩<<stu[i].p[j].score<<'\n'
}
if(r>4) break
}
}
void Stu::output_gradelist_ofoneclass(char a[10],int c)
{
int i=0, j=0 ,k,lstatic r(0)
for(i=0i<49i++)
for(j=0j<10j++)
for(k=i+1k<50k++)
for(l=0l<10l++)
{ if (strcmp(stu[i].p[j].course,stu[k].p[l].course)==0&&strcmp(stu[i].p[j].course,a)==0)
if((stu[i].Class==stu[k].Class==c)&&(stu[i].id>stu[k].id))
{
Stu m=stu[i]
stu[i].copy(stu[k])
stu[k].copy(m)
}
}
for(i=0i<50i++)
for(j=0j<10j++)
if((strcmp(stu[i].p[j].course,a)==0)&&(stu[i].Class==c))
stu[i].output()
}
void Stu:: output_average(char a[10])
{
int k,i=0, j=0 , g,b,c[5]={1,2,3,4,5}, r[5]={0,0,0,0,0},sum[5]={0,0,0,0,0}
double m[5]
for (k=0k<5k++)
for(i=0i<50i++)
for(j=0j<10j++)
{ if ((strcmp(stu[i].p[j].course,a)==0 )&&( stu[i].Class==c[k]))
{ sum[k]+=stu[i].p[j].score
r[k]++
}
}
for(g=0g<4g++)
for(b=g+1b<5b++)
{
if(sum[g]<sum[b])
{ i=sum[g]j=c[g]c[g]=c[b]c[b]=jk=r[g]r[g]=r[b]r[b]=k
sum[g]=sum[b]
sum[b]=i
}
if(sum[g]!=0) m[g]=(double)sum[g]/r[g]
else m[g]=0
}
if (sum[4]=0) m[4]=0
else m[4]=(double)sum[4]/r[4]
for(g=0g<4g++)
for(b=g+1b<5b++)
{
if(m[g]<m[b]){j=m[g]m[g]=m[b]m[b]=jk=c[g]c[g]=c[b]c[b]=k}
}
for(g=0g<5g++) if(m[g]!=0)
cout<<c[g]<<"班的平均分为:"<<m[g]<<endl
}
void main()
{
char a[10],b[10],c[10],d[10],e[10],mark,h[10][10]
int j,f,l[10]={0,0,0,0,0,0,0,0,0,0},g,x,zstatic int y=0
cout<<" 教 学 管 理 系 统"<<endl
cout<<" 1.添加学生信息 "<<endl
cout<<" 2.查询某门课程的不及格名单 "<<endl
cout<<" 3.查询某门课程的全年级的前五名"<<endl
cout<<" 4.查询每个班某门课程的平均成绩"<<endl
cout<<" 5.查询某班某门课程的成绩单."<<endl
loop: cout<<" 请输入您的选择(1-5):"cout<<endl
cin>>x
switch(x)
{
case 1: cout<<"请输入学生信息: (输入-1时结束输入)"<<endl
cout<<"班级\t学号\t姓名\t选修课1\t成绩1\t选修课2\t成绩2\t..."<<endl
for(yy<50y++)
{
cin>>f
if(f==-1)goto loop
cin>>g
cin>>e
for(j=0j<10j++)
{
cin>>h[j]
cin>>l[j]
mark=cin.get()
if(mark=='\n') break
}
stu[y].getdate(f,g,e,h,l)
}goto loopbreak
case 2:
cout<<"输入您想要哪门课程的不及格名单:"<<endl
cin>>a
cout<<"班级\t学号\t姓名\t选修课\t成绩\t"<<endl
stu[0].output_failor(a)goto loopbreak
case 3:
cout<<"请输入您想要哪门课程的全年级的前五名"<<endl
cin>>b
stu[0].output_first5(b)
goto loopbreak
case 4:cout<<"输入您想要哪门课程的每班平均成绩:"<<endl
cin>>c
stu[0].output_average(c)
goto loop
break
case 5: cout<<"输入您想要哪门课程、哪个班级的成绩单:"
cin>>d>>z
stu[0].output_gradelist_ofoneclass(d,z)
goto loopbreak
default:cout<<"输入错误,请重新输入."<<endl
goto loop
}
}
教务管理信息系统的源程序属于应毁核用软件。教学管理系统是学校信息化的重要组成部分,是学校教学运行的重要基手悔石,由此得知教务管理系统程序属于应用软件。纤薯掘
教务管理系统(又称教学管理信息服务平台,简称教务系统)是大学教学管理信息化的一个综合平台。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)