我是靠谱客的博主 娇气狗,这篇文章主要介绍将二维矩阵列元素循环左移k位 C语言,现在分享给大家,希望可以做个参考。

函教fun的功能是:将a所指3x5矩阵中第k列的元素左移到第0列,第k列以后的每列元素行依次左移,原来左边的各列依次绕到右边。

例如,有下列矩阵:

  1  2  3  4  5
  1  2  3  4  5
  1  2  3  4  5

若k等于2,程序执行结果为:

  3  4  5  1  2
  3  4  5  1  2
  3  4  5  1  2

复制代码
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
#define M 3 #define N 5 void fun(int (*a)[N], int k){ int i, j, p, temp; for (p = 1; p <= k; p++) for (i = 0; i < M; i++){ temp = a[i][0]; for (j = 0; j < N - 1; j++) a[i][j] = a[i][j + 1]; a[i][N - 1] = temp; } } int main(){ int x[M][N] = {{1, 2, 3, 4, 5}, {1, 2, 3, 4, 5}, {1, 2, 3, 4, 5}}, i, j; printf("The array before moving:n"); for (i = 0; i < M; i++){ for (j = 0; j < N; j++) printf("%3d", x[i][j]); printf("n"); } fun(x, 2); printf("The array after moving:n"); for (i = 0; i < M; i++){ for (j = 0; j < N; j++) printf("%3d", x[i][j]); printf("n"); } }

 程序结果:

最后

以上就是娇气狗最近收集整理的关于将二维矩阵列元素循环左移k位 C语言的全部内容,更多相关将二维矩阵列元素循环左移k位内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(65)

评论列表共有 0 条评论

立即
投稿
返回
顶部