Program to print the given number pattern
56789
 4567
  345
   23
    1

C Programming Language / Loop control in C Language

1177

Program:

/**
 * C program to print number pattern
 */

#include <stdio.h>

int main()
{
    int i, j, k, N;

    printf("Enter N: ");
    scanf("%d", &N);

    for(i=N; i>=1; i--)
    {
        k = i;

        // Logic to print spaces
        for(j=i; j < N; j++)
        {
            printf(" ");
        }

        // Logic to print numbers
        for(j=1; j <= i; j++, k++)
        {
            printf("%d", k);
        }

        printf("\n");
    }

    return 0;
}

Output:

56789
 4567
  345
   23
    1

Explanation:

Logic to print the given number pattern

 

56789
 4567
  345
   23
    1

 

The logic to print the above pattern is almost similar to the pattern we just printed. In this pattern we only need to add logic of printing spaces just before number gets printed. There are N - i spaces per row (where i is the current row number). If you want to see or count spaces, you can hover on to the pattern.
Step-by-step descriptive logic:

  1. To print spaces, run an inner loop from i to N - 1. Inside this loop print single blank space.

This Particular section is dedicated to Programs only. If you want learn more about C Programming Language. Then you can visit below links to get more depth on this subject.