#include <iostream>
#include <stdio.h>
using namespace std;
class SUM{
private:
int m_a[4][4]; // 存放要处理的数据
int m_s; // 存放数组a外围各元素的和
public:
SUM(int b[4][4]); // 构造函数,用数组b初始化数组a
void process(); // 求二维数组外围各元素的和s
void print(); // 按行列方式输出数组a的各元素值,并输出外围各元素的和
};
SUM::SUM(int b[4][4])
{
int i;
int j;
for(i=0; i<4; i++)
{
for(j=0; j<4; j++)
{
m_a[i][j] = b[i][j];
}
}
}
void SUM::process()
{
int i,j;
m_s = 0;
for(i=0; i<4; i++)
{
for(j=0; j<4; j++)
{
if(i==0 || i==3)
{
m_s += m_a[i][j];
}
}
}
m_s += m_a[1][0]+m_a[1][3]+m_a[2][0]+m_a[2][3];
}
void SUM::print()
{
int i;
int j;
cout<<"外围各元素的和:"<<m_s<<endl;
for(i=0; i<4; i++)
{
for(j=0; j<4; j++)
{
printf ("%5d",m_a[i][j]);
}
cout<<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();
return 0;
}