Following is a general way of printing 2D matrix such that every row is printed in separate lines.
How to print print without using any curly braces in for loops?
We strongly recommend you to minimize your browser and try this yourself first.
We can simply removed inner curly bracket as there is single line inner for loop. How to remove outer curly braces? Below is solution.
1 2 3 4 5 6
The actual trick is in following statement “\n”[j == n-1], explanation is as follows:
” \n” is a 2 character string where 1st character is space and 2nd character is newline, so we want space after each value except last for which we want a newline. In C, string literals are treated character arrays [See this for more details].
j == n-1 statement evaluates to 0 for internal elements (because for them j < n-1) and for last value(of each row) it becomes 1. So for internal elements, statement evaluate to " \n" i.e. " " and for last element of each row " \n" i.e. "\n" Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.