封装-一个类:
私有成员为: 一个长度为8的整形数组
公有成员为:
输出函数:输出数组中所有内容;
输入函数:输入数组所有元素;
求和函数:求得数组中所有元素的和
排序函数:将数组中的元表进行升序排序
要求:成员函数类内声明,外定义。
#include <iostream>
using namespace std;
class ARR
{
private:
int str[8];
public:
void input();
void show();
int sum();
void sort();
};
//输入
void ARR::input()
{
for(int i=0; i<8; i++)
{
cout<<"请输入第"<<i+1<<"个数>>>";
cin>>str[i];
}
}
//输出
void ARR::show()
{
for(int i=0; i<8; i++)
{
cout<<str[i]<<'\t';
}
cout<<endl;
}
//求和
int ARR::sum()
{
int sum = 0;
for(int i=0; i<8; i++)
{
sum += str[i];
}
return sum;
}
//排序
void ARR::sort()
{
int flag = 0;
for(int i=0; i<8; i++)
{
for(int j=0; j<7-i; j++)
{
if(str[j]>str[j+1])
{
int t =str[j];
str[j] = str[j+1];
str[j+1] = t;
flag++;
}
}
if(flag==0)
{
break;
}
}
}
int main()
{
ARR s1;
s1.input();
cout<<"排序前:";
s1.show();
s1.sort();
cout<<"排序前:";
s1.show();
cout<<"sum="<<s1.sum()<<endl;
return 0;
}
测试结果
请输入第1个数>>>12
请输入第2个数>>>25
请输入第3个数>>>58
请输入第4个数>>>69
请输入第5个数>>>32
请输入第6个数>>>14
请输入第7个数>>>85
请输入第8个数>>>10
排序前:12 25 58 69 32 14 85 10
排序前:10 12 14 25 32 58 69 85
sum=305