题目:请编写函数fun,函数的功能是求出二维数组a周边元素之和,作为函数值返回。
????例如:若二维数组如下:
????????1?3?5?7?9
????????2?9?9?9?4
????????6?9?9?9?8
????????1?3?5?7?0
????则函数返回值为61。
????在主函数中赋予二维数组(大小为M*N,M.N由符号常量确定)值,调用fun函数进行计算,并输出计算结果。
????要求自行设计fun函数,在主函数中,输入、输出时,应显示适当提示信息。
#define M 4
#define N 5
int fun(int (*b)[5]) {
//int b[M][N];
int sum=0;
for (int i = 0;i<M; i++) {
for (int j = 0;j<N; j++) {
if (i == 0 || i==M-1||j==0||j==N-1) {
sum += b[i][j];
continue;
}
}
}
printf("%d",sum);
return sum;
}
int main() {
int a[M][N];
/*= {1,3,5,7,9,
2, 9, 9, 9, 4,
6, 9, 9, 9, 8,
1, 3, 5, 7, 0
};*/
int temp;
for (int i = 0;i<M; i++) {
for (int j = 0; j < N; j++) {
printf("row %d,column %d\n",i,j);
scanf("%d", &(a[i][j]));
}
}
fun(a);
return 0;
}
|