work.cpp
#include <iostream>
#include <cstring>
using namespace std;
struct Student{
public:
string name;
int age;
private:
int score;
public:
int show(){
return score;
}
void update(int new_socre){
score = new_socre;
}
};
void sort(Student *(&stu)){
Student temp;
int i,j,count;
for (i=0;i<3;i++) {
count =0;
for (j=0;j<(2-i);j++) {
if(stu[j].show()>stu[j+1].show())
{
temp=stu[j];
stu[j]=stu[j+1];
stu[j+1]= temp;
count++;
}
}
if(0==count)
break;
}
}
int main()
{
Student * p = new Student[3];
Student *(&stu)=p;
int i;
for (i=0;i<3;i++){
string name;
int age;
int scoer;
cout<<"请输入"<<(i+1)<<"号学生姓名"<<endl;
getline(cin,name);
stu[i].name=name;
cout<<"请输入"<<(i+1)<<"号学生年龄"<<endl;
cin>>age;
stu[i].age=age;
cout<<"请输入"<<(i+1)<<"号学生成绩"<<endl;
cin>>scoer;
stu[i].update(scoer);
cin.ignore();
}
sort(*&stu);
for (i=0;i<3;i++){
cout<<(i+1)<<"号学生姓名:"<<stu[i].name<<" 年龄:"<<stu[i].age<<" 成绩:"<<stu[i].show()<<endl;
}
delete []p;
p=nullptr;
return 0;
}