建立一个类SUM,求二维数组外围各元素的和,并且输出数组各元素及所求之和

建立一个类SUM,求二维数组外围各元素的和,并且输出数组各元素及所求之和。具体要求如下:

(1)私有数据成员

int a[4][4]:二维数组,存放要处理的数据。

int s:存放数组a外围各元素的和。

(2)公有成员函数

SUM(int b[4][4]):构造函数,用数组b初始化数组a。

void process():求二维数组外围各元素的和s。

void print():按行列方式输出数组a的各元素值,并输出外围各元素的和。

(3)在主函数中完成对该类的测试。使用如下测试数据(外围元素是指阴影部分的元素):

1 2 3 4

5 6 7 8

9 10 11 12

13 14 15 16

#include <iostream>
#include <iomanip>
using namespace std;

class SUM
{
public:
	SUM(int b[4][4]);
	void process();
	void print();
private:
	int a[4][4];
	int s;
};
SUM::SUM(int b[4][4])
{
	s = 0;
	int i, j;
	for (i = 0; i < 4; i++)
		for (j = 0; j < 4; j++)
			a[i][j] = b[i][j];
}
void SUM::process()
{
	int i, j;
	for (i = 0; i < 4; i++)
		for (j = 0; j < 4; j++)
		{
			if (i == 0 || i == 3)			
				s += a[i][j];			
			else if (j == 0 || j == 3)
				s += a[i][j];
		}
}
void SUM::print()
{
	int i, j;
	for (i = 0; i < 4; i++)
	{
		for (j = 0; j < 4; j++)
			cout << setiosflags(ios::left )<<setw(3)<< a[i][j];
		cout << endl;
	}
	cout << "s = " << s << endl;
}

int main()
{
	int b[4][4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 };
	SUM test(b);
	test.process();
	test.print();
	system("pause");
	return 0;
}

猜你喜欢

转载自blog.csdn.net/cxycj123/article/details/79763665
今日推荐