📄 学生排行.txt
字号:
#include<iostream>
using namespace std;
class student
{
public:
friend class students;
private:
int id,mark;
};
class students
{
public:
void input(int n,int j,int k);
void rebuild(int n);
private:
student a[1000];
int tempmark;
int tempid;
student b[1000];
};
void students::rebuild(int n)
{
for(int z=0;z<n;z++)
{
b[z].id=a[z].id;
b[z].mark=a[z].mark;
}
for(int g=0;g<n;g++)
{
for(int i=0;i<n;i++)
{
if (a[i].mark<a[i+1].mark)
{tempmark=a[i].mark;
a[i].mark=a[i+1].mark;
a[i+1].mark=tempmark;
tempid=a[i].id;
a[i].id=a[i+1].id;
a[i+1].id=tempid;
}
}
}
cout<<"学生原始记录为:"<<endl;
for(int k=0;k<n;k++)
{
cout<<"学号: "<<b[k].id<<" 成绩: "<<b[k].mark<<endl;
}
cout<<"学生排序后记录为:"<<endl;
for(int h=0;h<n;h++)
{
cout<<"学号: "<<a[h].id<<" 成绩: "<<a[h].mark<<endl;
}
}
void students::input(int n,int j,int k)
{
a[n].id=j;
a[n].mark=k;
}
int main()
{
int n;
cout<<"输入班上学生的人数:";
cin>>n;
students table;
struct
{
int mark;
int id;
} d[1000];
for(int e=0;e<n;e++)
{
cout<<"输入第"<<e+1<<"个学生的学号:";
cin>>d[e].id;
cout<<"输入成绩:";
cin>>d[e].mark;
int x=d[e].id;int y=d[e].mark;
table.input(e,x,y);
}
table.rebuild(n);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -