谁能告诉我哪错了啊!!!
2025-01-21 14:15:17
发布于:浙江
#include<bits/stdc++.h>
#include<stdlib.h>
#include<string>
#include<windows.h>
using namespace std;
int co,positionn;//co用于选择
string chco;
long long sg,out;//sg是学生人数,out是满分
double max_score=0,min_score,sum_score=0;//max_smore是最高分,min_smore是最低分
struct student
{
double score;//score是分数
string name;//name是姓名
long long position;//position是排名
};
bool cmp(student x,student y)
{
return x.score>y.score;
}
int main()
{
d:
system("cls");
cout<<"请选择以下选项(输入序号,按‘ENTER’进入):\n";
cout<<"1.普通考试信息录入\n";
cout<<"2.高级考试信息录入\n";
cout<<"3.帮助\n";
cin>>co;
if(co==1)
{
sum_score=0;
system("cls");
cout<<"请输入满分:\n";
cin>>out;
min_score=out+1;
cout<<"请输入学生人数:\n";
cin>>sg;
student sx[100000000000];
string max_smore_names[sg];
cout<<"请输入学生姓名与成绩(格式请参见‘帮助’):\n";
for(int i=1;i<=sg;i++)
{
cin>>sx[i-1].name>>sx[i-1].score;
if(sx[i-1].score>max_score)
{
max_score=sx[i-1].score;
}
if(sx[i-1].score<min_score)
{
min_score=sx[i-1].score;
}
sum_score+=sx[i-1].score;
}
system("cls");
cout<<"信息录入完成。正在为您统计数据...";
sort(sx****x+sg+1,cmp);
for(int i=1;i<=sg;i++)
{
sx[i-1].position=1;
for(int j=1;j<=sg;j++)
{
if(sx[j-1].score>sx[i-1].score)
{
sx[i-1].position++;
}
}
}
*:
system("cls");
cout<<"请选择以下选项(输入序号,按‘ENTER’进入):\n";
cout<<"1.成绩报告\n";
cout<<"2.排名\n";
cout<<"3.查询学生成绩\n";
cout<<"4.返回首页\n";
cin>>co;
if(co==1)
{
b:
system("cls");
cout<<"成绩报告\n\n";
cout<<"输入'e'退出。\n\n";
cout<<"最高分:";
for(int i=1;i<=sg;i++)
{
if(sx[i-1].score==max_score)
{
cout<<sx[i-1].name<<" ";
}
}
cout<<max_score<<"分"<<endl;
cout<<"最低分:";
for(int i=1;i<=sg;i++)
{
if(sx[i-1].score==min_score)
{
cout<<sx[i-1].name<<" ";
}
}
cout<<min_score<<"分"<<endl;
cout<<"平均分:";
cout<<fixed<<setprecision(2)<<sum_score/sg<<"分"<<endl;
cout<<out<<"分:";
for(int i=1;i<=sg;i++)
{
if(sx[i-1].score==out)
{
cout<<sx[i-1].name<<" ";
}
}
cout<<endl;
cout<<"总分"<<sum_score<<endl;
cin>>chco;
if(chco=="e")
{
goto *;
}
else
{
system("cls");
cout<<"您的输入有误。";
Sleep(1000);
goto b;
}
}
else if(co==2)
{
c:
system("cls");
cout<<"排名\n\n";
cout<<"输入'e'退出。\n\n";
for(int i=1;i<=sg;i++)
{
cout<<"第"<<sx[i-1].position<<"名 "<<sx[i-1].name<<" "<<sx[i-1].score<<"分 ";
if(sx[i-1].score<=out-(out/20*0)&&sx[i-1].score>=out-(out/20*2))
{
cout<<"*";//100-90
}
else if(sx[i-1].score<out-(out/20*2)&&sx[i-1].score>=out-(out/20*4))
{
cout<<"B";//90-80
}
else if(sx[i-1].score<out-(out/20*4)&&sx[i-1].score>=out-(out/20*6))
{
cout<<"C";//80-70
}
else if(sx[i-1].score<out-(out/20*6)&&sx[i-1].score>=out-(out/20*8))
{
cout<<"D";//70-60
}
else if(sx[i-1].score<out-(out/20*8)&&sx[i-1].score>=out-(out/20*10))
{
cout<<"E";//60-50
}
else
{
cout<<"F";//50-0
}
cout<<"级\n";
}
cin>>chco;
if(chco=="e")
{
goto *;
}
else
{
system("cls");
cout<<"您的输入有误。";
Sleep(1000);
goto c;
}
}
else if(co==3)
{
system("cls");
}
else if(co==4)
{
if(MessageBox(NULL,"您确定要返回主页吗?该操作会删除您输入的所有学生信息,请谨慎考虑。","返回主页",MB_YESNO)==IDYES)
{
goto d;
}
else
{
goto *;
}
}
}
return 0;
}
为什么输出“信息录入完成。正在为您统计数据...”以后直接结束了?谁帮我找下错啊!
你想和小伙伴一起刷题吗?
你想学习如何制作一个游戏吗?
你想制作一个实用的C++小程序吗?
那就快来C++【游戏】【作品】中心吧!
这里空空如也
有帮助,赞一个