以下是打印2D矩阵的一般方法,以使每一行都打印在单独的行中。
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{
cout << arr[i][j] << " ";
}
// Newline for new row
cout << endl;
}
如何在不使用任何花括号的情况下打印打印循环?
强烈建议您最小化浏览器,然后自己尝试。
我们可以简单地删除内部花括号,因为for循环内部只有一行。如何去除外花括号?下面是解决方案。
// C++ program to print a matrix line by line without
// using curly braces.
#include
using namespace std;
int main()
{
int m = 2, n = 3;
int mat[][3] = { {1, 2, 3},
{4, 5, 6},
};
for (int i = 0; i < m; i++)
for (int j = 0; j < n; j++)
// Prints ' ' if j != n-1 else prints '\n'
cout << mat[i][j] << " \n"[j == n-1];
return 0;
}
输出:
1 2 3
4 5 6
实际技巧在下面的语句“ \ n” [j == n-1]中,说明如下:
” \ n”是2,其中1个字符是空间和第2字符是换行,所以我们想除了最后的每个值之后空间为此我们需要一个新行。在C语言中,字符串文字被视为字符数组[有关更多详细信息,请参字面量内容。
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程” 。