1、封装一个结构体,完成存放学生成绩等功能
#include <iostream>
#define MAX 50
using namespace std;
struct Stu
{
private:
//学生成绩
int score[MAX];
//学生个数
int num;
public:
//设置学生个数
void setNum()
{
cout<<"设置学生个数:"<<endl;;
cin>>num;
}
//输入学生成绩
void input()
{
for(int i=0; i<num; i++)
{
cout<<"输入学生成绩 "<<endl;
cin>>score[i];
}
cout<<"录入完成"<<endl;
}
//对成绩进行降序排序
void sort()
{
for(int i=0; i<num; i++)
{
int index = i;
for(int j=i+1; j<num; j++)
{
if(score[index] < score[j])
{
//更新最值所在位置
index = j;
}
}
//判断待排序序列的最值是否为待排序的第一个元素,若不是则交换
if(index != i)
{
int temp = score[i];
score[i] = score[index];
score[index] = temp;
}
}
cout<<"排序结束"<<endl;
}
//展示学生成绩
void show()
{
cout<<"输出学生成绩:"<<endl;
for(int i=0; i<num; i++)
{
cout<<score[i]<<endl;
}
}
};
int main()
{
Stu s;
s.setNum();
s.input();
s.sort();
s.show();
return 0;
}
运行结果:
设置学生个数:
5
输入学生成绩
89
输入学生成绩
87
输入学生成绩
76
输入学生成绩
90
输入学生成绩
95
录入完成
排序结束
输出学生成绩:
95
90
89
87
76
2、思维导图