版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/CSDN___CSDN/article/details/82953080
运行环境:VS2017
由小到大排序
可以看出在主函数中所做的事:
(1)定义对象。
(2)向各对象发出“消息”,通知各对象完成有关任务。即调用有关对象的成员函数,去完成相应的操作。
(个人想法:如果有多个数组需要由小到大排序,使用类的话会比较方便吧,如果还是用C语言那种思路,每对一个数组排序,就要写一遍程序,这样会写大量的重复的代码,占空间,且可读性不强,如果使用类会方便很多!)
(3)主函数很简单,语句很少,大多数情况下,主函数中甚至不出现控制结构(判断结构和循环结构),而在成员函数中常会使用控制结构。
在面向对象的程序设计中,最关键的工作是类的设计。所有对数据的操作都体现在类中。
#include <iostream>
using namespace std;
class Array_sort
{
public:
void set_value();
void sort_value();
void show_value();
private:
int a[100];
int n;
};
void Array_sort::set_value()
{
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> a[i];
}
}
void Array_sort::sort_value()
{
int i, j, k,t;
for (i = 0; i < n - 1; i++)
{
k = i;
for (j = i + 1; j < n; j++)
{
if (a[j] < a[k])
{
k = j;
}
}
if (k != i)
{
t = a[k]; a[k] = a[i]; a[i] = t;
}
}
}
void Array_sort::show_value()
{
for (int i = 0; i < n; i++)
{
cout << a[i] << " ";
}
cout << endl;
}
int main()
{
Array_sort arr;
arr.set_value();
arr.show_value();
arr.sort_value();
arr.show_value();
return 0;
}