目标:创建一个结构体ST,成员有num(学号),name(姓名),score(成绩),
从键盘输入N个人员信息,按score(成绩)降序输出每个学生的记录,在main函数中输入数据,在另一个函数中排序并输出。
运行结果:output后面没有东西了
# include <iostream>
using namespace std;
#include <iomanip>
#include<string>
void sort();
int N;
struct ST
{
int num;
string name;
float score;
};
ST a[100];
int main()
{
int i;
cout<<"请输入学生的数量 ";
cin>>N;
cout<<"请分别输入"<<N<<"个学生的学号,姓名,成绩。用空格分开 ";
for(i=0; i<N; i++)
{
cin>>a[i].num>>a[i].name>>a[i].score;
}
sort();
return 0;
}
void sort()
{
ST t;
int i;
for(i=0; i<N; i++)
{
for(i=0; i<N--; i++)
{
while(a[i].score<a[i+1].score)
{
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
}
}
}
cout<<"output: "<<endl;
for(i=0; i<N; i++)
{
cout<<setw(12)<<a[i].num<<setw(8)<<a[i].name<<setw(8)<<a[i].score<<endl;
}
}