C++ 程序以 Z 形打印矩阵?
在此我们将了解如何以 Z 形打印矩阵元素。因此,如果数组如下所示 −
5 8 7 1 2 3 6 4 1 7 8 9 4 8 1 5
那么它将以以下形式打印出来:5、8、7、1、6、7、4、8、1、5
算法
printMatrixZ(mat)
Begin print the first row i := 1, j := n-2 while i < n and j >= 0, do print mat[i, j] i := i + 1, j := j - 1 done print the last row End
示例
#include<iostream> #define MAX 4 using namespace std; void printMatrixZ(int mat[][MAX], int n){ for(int i = 0; i<n; i++){ cout << mat[0][i] << " "; } int i = 1, j = n-2; while(i < n && j >= 0){ cout << mat[i][j] << " "; i++; j--; } for(int i = 1; i<n; i++){ cout << mat[n-1][i] << " "; } } main() { int matrix[][MAX] = {{5, 8, 7, 1}, {2, 3, 6, 4}, {1, 7, 8, 9}, {4, 8, 1, 5} }; printMatrixZ(matrix, 4); }
输出
5 8 7 1 6 7 4 8 1 5
广告