视频讲解:openjudge1.8.3_哔哩哔哩_bilibili
解题思路:
1.由题意得,计算二维数组边缘的元素之和,首先定义一个二维数组,定义在主函数外,并且多开几个空间
2.依次输入二维数组中的元素,并且都添加到累加器中
3.开始遍历,发现如果是位于边缘元素的话,i==1或者i==m或者j==1或者j==n,这类的元素值跳过,否则,从累加器依次减去
4.输出sum的值,即为边缘元素的和
#include<bits/stdc++.h>
using namespace std;
int a[105][105];
int main()
{
int m,n,sum=0;
cin>>m>>n;//输入行数和列数
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
{
cin>>a[i][j];//输入二维数组元素
sum+=a[i][j];//都添加到累加器中
}
for(int i=1;i<=m;i++)
for(int j=1;j<=n;j++)
{
if(i==1||i==m||j==1||j==n)//如果是位于边缘的元素,继续遍历
continue;
else
sum-=a[i][j];//否则,减去该元素的值
}
cout<<sum;//输出累加器
return 0;
}