下列程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int \[][N],int m),该函数的功能是使数组右上半三角元素中的值乘以m。

下列程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int [][N],int m),该函数的功能是使数组右上半三角元素中的值乘以m。例如,若m的值为2,a数组中的值为:下列程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int \[][N],int m),该函数的功能是使数组右上半三角元素中的值乘以m。_第1张图片
,则返回主程序后a数组中的值应为:下列程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int \[][N],int m),该函数的功能是使数组右上半三角元素中的值乘以m。_第2张图片
方式一:

#define _CRT_SECURE_NO_WARNINGS
#include
#include

#define N 3
void fun(int a[][N], int m) {
	for (int i = 0; i < N; i++) {
		for (int j = N - 1; j >= i; j--) {
			a[i][j] = a[i][j] * m;
		}
	}
}
int main() {
	int m = 0;
	scanf("%d", &m);
	int a[][N] = { {1,9,7},{2,3,8},{4,5,6} };
	fun(a, m);
	for (int i = 0; i < N; i++) {
		for (int j = 0; j < N; j++) {
			printf("%d  ", a[i][j]);
		}
		printf("\n");
	}
	return 0;
}

方式二:

#define _CRT_SECURE_NO_WARNINGS
#include
#include

#define N 3
void fun(int a[][N], int m) {
	for (int j = 0; j < N; j++) {
		for (int i = 0; i <= j; i++) {
			a[i][j] = a[i][j] * m;
		}
	}
}
int main() {
	int m = 0;
	scanf("%d", &m);
	int a[][N] = { {1,9,7},{2,3,8},{4,5,6} };
	fun(a, m);
	for (int i = 0; i < N; i++) {
		for (int j = 0; j < N; j++) {
			printf("%d  ", a[i][j]);
		}
		printf("\n");
	}
	return 0;
}

下列程序定义了N*N的二维数组,并在主函数中自动赋值。请编写函数fun(int \[][N],int m),该函数的功能是使数组右上半三角元素中的值乘以m。_第3张图片

你可能感兴趣的:(计算机二级C语言,算法,c++,c语言)