/*
*Copyright (c) 2013 烟台大学计算机与控制工程学院
* All rights reserved
* 作 者: 刘慧艳
* 完成日期:2014 年6月20日
* 版 本 号:v1.0
* 问题描述:
输入学生的姓名和成绩,统计出最高分的学生和最低分的学生。
Input
输入5个学生的姓名和分数,用结构体完成
Output
输出最高分的姓名和分数,最低分的姓名和分数
*/
#include <iostream>
using namespace std;
struct Student
{
string name;//name
double grade;
};
void sort(Student s[],int n)//按总分排序(降序)
{
int j,i;
Student m;
for(j=0; j<n-1; j++) //冒泡排序法
{
for(i=0; i<n-1-j; i++)
{
if(s[i].grade<s[i+1].grade)
{
m=s[i];
s[i]=s[i+1];
s[i+1]=m;
}
}
}
}
void show(Student s[],int n)
{
cout<<"MAX: "<<s[0].name<<" "<<s[0].grade<<endl;
cout<<endl;
cout<<"MIN:"<<s[n-1].name<<" "<<s[n-1].grade<<endl;
}
int main()
{
Student stu[5];
for(int i=0;i<5;i++)
{
cin>>stu[i].name>>stu[i].grade;
}
sort(stu,5);
show(stu,5);
return 0;
}
冒泡排序和结构体
最新推荐文章于 2023-03-18 20:30:15 发布