任务描述
本关任务:请编写函数fun(),函数的功能是:求出某个二维数组(如5行5列)的周边元素值之和,作为函数值返回。
测试说明
平台会对你编写的代码进行测试:
输入:第一行为一个整数n,代表数组维数。第二行开始为二维数组赋值。 输出:周边元素之和。
测试输入: 3 1 2 3 4 5 6 7 8 9 预期输出: 40
任务描述
本关任务:请编写函数fun(),函数的功能是:求出某个二维数组(如5行5列)的周边元素值之和,作为函数值返回。
测试说明
平台会对你编写的代码进行测试:
输入:第一行为一个整数n,代表数组维数。第二行开始为二维数组赋值。 输出:周边元素之和。
测试输入: 3 1 2 3 4 5 6 7 8 9 预期输出: 40
展开全部
收起
源程序如下:
#define N 10//宏定义N=10
#include <stdio.h>
int fun(int a[N][N],int n)
{
int i,j,sum = 0;
for (i = 0; i < n; i++)//控制行变量遍历
for (j = 0; j < n; j++)//控制列变量遍历
if (i == 0 || i == (n-1) || j == 0 || j == (n-1))//判断是否为周边元素
sum += a[i][j];//进行求和运算
return sum;
}
void main()
{
int number[N][N];//定义二维数组并赋初值
int i, j, n=3;//定义循环变量
int sum = 0;//定义加和变量,并初始化赋值为0
printf("请输入一个二维数组的维度:\n");
scanf("%d",&n);
for (i = 0; i < n; i++)//控制行变量遍历
for (j = 0; j < n; j++)//控制列变量遍历
scanf("%d",&number[i][j]);
sum = fun(number,n);
printf("%d", sum);//输出和
}
请输入一个二维数组的维度:3
1 2 3 4 5 6 7 8 9
周边元素之和为:40
报告相同问题?