Q:

# C program to print box pattern using loops

Input a number and print the following box pattern in C language,

```    4 4 4 4 4 4 4
4 3 3 3 3 3 4
4 3 2 2 2 3 4
4 3 2 1 2 3 4
4 3 2 2 2 3 4
4 3 3 3 3 3 4
4 4 4 4 4 4 4
```

Input format:

The input will contain a single integer.

Constraints:

1<=n<=100

Output format:

Print the pattern mentioned in the problem statement.

Example

```    Input:
2

Output:
2 2 2
2 1 2
2 2 2```

## Code to print the box pattern in C

``````//Code to print the box pattern in C
#include <stdio.h>

int main()
{
int n, i, j, t; //n is representing number of the output box

//input n
printf("Enter the value of n: ");
scanf("%d", &n);

t = 2 * n - 1;
i = t; //i and j are the number of rows and columns of the box.
j = t;

// Declare box as a 2-D matrix having i number of rows
//and j number of columns
int a[i][j], k, m, p;
p = n;
m = 0;

for (k = 0; k < p; k++) {
for (i = m; i < t; i++) {
for (j = m; j < t; j++) {
if (i == m || i == (t - 1) || j == m || j == (t - 1)) {
a[i][j] = n;
if (n == 1) {
break;
}
}
}
}
t = t - 1;
n = n - 1;
m = m + 1;
}
t = 2 * m - 1;
for (i = 0; i < t; i++) {
for (j = 0; j < t; j++) {
printf("%d ", a[i][j]);
}
printf("\n");
}

return 0;
}``````

Output

```First run:
Enter the value of n: 2
2 2 2
2 1 2
2 2 2

Second run:
Enter the value of n: 4
4 4 4 4 4 4 4
4 3 3 3 3 3 4
4 3 2 2 2 3 4
4 3 2 1 2 3 4
4 3 2 2 2 3 4
4 3 3 3 3 3 4
4 4 4 4 4 4 4  ```