阅读背景:

二维数组练习03_计算矩阵边缘元素之和

来源:互联网 
/*
	Name: 03_计算矩阵边缘元素之和
	Author: 巧若拙 
	Description: 
描述
输入一个整数矩阵,计算位于矩阵边缘的元素之和。
所谓矩阵边缘的元素,就是第一行和最后一行的元素以及第一列和最后一列的元素。
输入
第一行分别为矩阵的行数m和列数n(m < 100,n < 100),两者之间以一个空格分开。
接下来输入的m行数据中,每行包含n个整数,整数之间以一个空格分开。
输出
输出对应矩阵的边缘元素和
样例输入
3 3
3 4 1
3 7 1
2 0 1
样例输出
15
*/
#include <iostream>

using namespace std;

const int M = 100;
const int N = 100;
int A[M][N];

int main() 
{
	int m, n;
	cin >> m >> n;
	for (int i=0; i<m; i++)
	{
		for (int j=0; j<n; j++)
		{
			cin >> A[i][j];
		}
	}
	
	int s = 0;
	if (m == 1 || n == 1)//只有一行或一列的情况要单独处理
	{
		for (int i=0; i<m; i++)
		{
			for (int j=0; j<n; j++)
			{
				s += A[i][j];
			}
		}
	} 
	else
	{
		for (int j=0; j<n; j++)//第一行和最后一行 
		{
			s += A[0][j] + A[m-1][j];
		}
		for (int i=m-2; i>0; i--)//第一列和最后一列(去掉重复元素) 
		{
			s += A[i][0] + A[i][n-1];
		}
	}
	
	cout << s << endl;
	
	return 0;	
} /*
	Name: 03_计算矩阵边缘元素之和
	Author: 巧若拙 
	Descript



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: