×

Search anything:

# Print the 2x3 rectangular matrix in C

#### C Programming FREE BOOK -> Problems for the day before your Coding Interview (on Amazon)

In this article, we have take a look at how to print a rectangular matrix of size 2 * 3 with integers in C Programming Language with numbers from 1 to 6.

The pattern is as follows:

``````246
135
``````

• Problem statement
• Approach to solve
• Implementation
• Output

# Problem statement

In this problem, we have to print the following rectangular matrix of size 2*3:

``````246
135
``````

# Approach to solve the problem

Following is the approach to solve this problem:

• We can solve this problem by using 2D array.

• First we declare a variable a where 2 represents the number of rows and 3 represents the number of columns. We also declare a variable count and initialise it with a value 1.

• Then we run two loops-

• Outer loop for the rows and inner for the columns.

• The positions of the elements in the matrix are as follows-

``````2-(0,0)  4-(0,1)  6-(0,2)
1-(1,0)  3-(1,1)  5-(1,2)
``````
• In each of the columns the second coordinate of the element is same and the first coordinate varies by 1 or 0. So we assume the second coordinate value to be in the outer loop and the first coordinate value to be in the inner loop.

• The second coordinate values vary from 0 to 2 so the outer loop runs from 0 till 2.

• The first coordinate values vary from 0 to 1. The first element lies in (1,0), second in (0,0), third in (1,1) and so on.
So the inner loop runs from 1 to 0 while decrementing its value by 1.
Inside this loop we take assign j as row and i as column and assign the value of count and increment count by 1 in the next line.

• Initially the value of i=0, we enter the loop. The value of j=1 so a[j][i]=a i.e. 1, then j=0 so a[j][i]=a i.e. 2 as we had incremented the value of count.
Now j=-1 which doesn't satisfy the condition of j>=0 so it exits the loop and cursor goes to next line due to the command `"printf("\n")"`. This way the loop continues and we get the desired output.

# Implementation

Following is the implementation of the code in c programming language-

``````#include<stdio.h>
int main()
{
int i,j, count=1,a;
for(i=0;i<3;i++)
{
for(j=1;j>=0;j--)
{
a[j][i]=count;
count++;
}
}
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
{
printf("%d",a[i][j]);
}
printf("\n");
}
return 0;
}
``````

# Output

The command to run the program is:

``````gcc code.c
./a.out
``````

The output will be:

``````246
135
``````

With this article at OpenGenus, you must have the complete idea of printing the given pattern.