您的位置:首页 > 编程语言 > C语言/C++

C++学生成绩排序

2015-12-13 22:16 661 查看
定义一个包含学生学号、姓名、年龄和三门课成绩的结构体,输入10个学生信息,并按总成绩由高到低的顺序排序并输出。

#include<iostream>
#include<iomanip>
using namespace std;
struct Student{
int number;
char name[10];
int age;
float score1;
float score2;
float score3;
float sum;
};
int main()
{
Student temp;
Student array[10];
cout<<"请输入10位学生的学号-姓名-年龄-C语言成绩-C++成绩-高数成绩"<<endl;
for(int i=0;i<10;i++)
{
cin>>array[i].number>>array[i].name>>array[i].age>>array[i].score1>>array[i].score2>>array[i].score3;
array[i].sum=array[i].score1+array[i].score2+array[i].score3;
}
cout<<"学号"<<setw(12)<<"姓名"<<setw(12)<<"年龄"<<setw(12)<<"C语言"<<setw(12)<<"C++"<<setw(12)<<"高数"<<endl;
for(int j=0;j<9;j++)
for(int i=0;i<9-j;i++)
if(array[i].sum<array[i+1].sum)
{
temp=array[i];
array[i]=array[i+1];
array[i+1]=temp;
}
for(i=0;i<10;i++)
cout<<array[i].number<<setw(12)<<array[i].name<<setw(12)<<array[i].age<<setw(12)<<array[i].score1<<setw(12)<<
array[i].score2<<setw(12)<<array[i].score3<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: