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

来源:互联网 发布:群发软件下载 编辑:程序博客网 时间:2024/06/03 22:39

具体要求如下:

(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 34
5 6 78

9 101112

13 141516

首先先建立一个工程SUM

SUM.h

#ifndef _SUM_H_#define _SUM_H_class SUM{private:int m_a[4][4];      //二维数组,存放要处理的数据int m_s;            //存放数组a外围各元素的和public:SUM(int b[4][4]);   //构造函数,用数组b初始化数组avoid process();     //求二维数组外围各元素的和svoid print();       //按行列方式输出数组a的各元素值,并输出外围各元素的和};#endif
main.cpp

#include <iostream>#include "SUM.h"int main(){int b[4][4];for(int i=0; i<4; i++){for(int j=0; j<4; j++){b[i][j] = i*4+j+1;}}SUM sum(b);sum.process();sum.print();return 0;}
SUM.cpp

#include <iostream>#include "SUM.h"SUM::SUM(int b[4][4]){for(int i=0; i<4; i++){for(int j=0; j<4; j++){m_a[i][j] = b[i][j];}}}void SUM::process(){m_s = 0;for(int i=0; i<4; i++){for(int j=0; j<4; j++){if(i==0 || i==3 || j==0 || j==3){m_s += m_a[i][j];}}}}void SUM::print(){int count = 0;for(int i=0; i<4; i++){for(int j=0; j<4; j++){std::cout<<m_a[i][j]<<'\t';count++;}if(count % 4 == 0)   {   std::cout<<std::endl;   }}std::cout<<"外围数组元素之和:"<<m_s<<std::endl;}


                                             
0 0
原创粉丝点击