0%

C12 | 使数组的左下三角元素中的值乘以n

读前福利:几百本互联网技术书籍送给大家https://mp.weixin.qq.com/s/dFqVQ2qJxvQ0YrIlPISJuw


1 题目

函数:fun(int a[][N], int n)

功能:使数组的左下三角元素中的值乘以n

描述:程序定义了 N*N 的二维数组,并在主函数中自动赋值。

举例:
若 n 的值为3,a数组中的值为
1 9 7
3 9 7
2 3 8
则返回主程序后 a 数组中的值应该为
3 9 7
9 27 7
6 9 24

2 思路

利用二重循环解决

在第二层需要进行一点注意的地方

3 代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# include <stdio.h> 
# include <stdlib.h>
# define N 3

/**
函数:fun(int a[][N], int n)
功能:使数组的左下三角元素中的值乘以n
描述:程序定义了 N*N 的二维数组,并在主函数中自动赋值。
举例:
若 n 的值为3,a数组中的值为
1 9 7
3 9 7
2 3 8
则返回主程序后 a 数组中的值应该为
3 9 7
9 27 7
6 9 24
*/

void fun(int a[][N], int n) {
for (int i = 0; i < N; ++i) {
for (int j = 0; j <= i; ++j) {
a[i][j] = a[i][j] * n;
}
}
}

int main(int argc, char const *argv[]) {
int a[N][N] = {{1,9,7}, {3,9,7}, {2,3,8}};
int n = 3;

printf("原数组为:\n");
for (int i = 0; i < N; ++i) {
for (int j = 0; j < N; ++j) {
printf("%d\t", a[i][j]);
}
printf("\n");
}

fun(a, n);
printf("计算后数组:\n");
for (int i = 0; i < N; ++i) {
for (int j = 0; j < N; ++j) {
printf("%d\t", a[i][j]);
}
printf("\n");
}
}

示例结果:

1
2
3
4
5
6
7
8
9
10
$ gcc ex008.c -o demo
$ ./demo
原数组为:
1 9 7
3 9 7
2 3 8
计算后数组:
3 9 7
9 27 7
6 9 24

最后

在这里给大家准备了几百本的互联网技术类书籍,需要的来下载吧!点击获取
有任何问题,欢迎随时交流!!!

------ 全文结束------