|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<iostream>
#include<string>
using namespace std;
class student
{
public:
student(string i=0,float r=0):id(i),result(r){}//构造函数
void in()
{
cout<<"请输入学号"<<endl;
cin>>this->id;
cout<<"请输入成绩"<<endl;
cin>>this->result;
}
void printf()
{
cout<<"学号:"<<this->id<<endl;
cout<<"成绩:"<<this->result<<endl;
}
float result;
private:
string id;
};
void paixu(student a[],int n)
{
student temp;
int i=0,j=0;
for(i=0;i<n;i++)
{
for(j=i;j<n;j++)
{
if(a[i].result<a[j].result)
{
temp=a[i];
a[i]=a[j];
a[j]=temp;
}
}
}
}
int main()
{
int i=0;
student a[10]={student("56",2),student("26",4.2),student("26",56),student("23",32),
student("626",65),student("626",54),student("25",88),student("51",1),
student("62",7),student("125",11)};
//paixu(a,10);
for(i=0;i<10;i=i+1)
{cout<<"排名第"<<i+1<<"的学生数据为:"<<endl;
a[i].printf();
}
return 0;
}
// 当我调用“paixu”函数,把初始化的数组地址传递过去之后就出错了,我搞不懂原因是什么,难道是因为这样子初始化之后数组变成常量了吗
|
|