Print the given number pattern
    1
   12
  123
 1234
12345

C Programming Language / Loop control in C Language

31687

Program:

/**
 * C program to print number pattern
 * www.atnyla.com
 */

#include <stdio.h>

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

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

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

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

        printf("\n");
    }

    return 0;
}

Output:

   1
   12
  123
 1234
12345

Explanation:

The above pattern is very much similar to the previous pattern we just printed. We only need to add logic to print trailing spaces that should be printed before the number gets printed.
If you hover your mouse on to the pattern you can see or count total spaces per row and can also think of logic to print the spaces. If you can notice, there are exactly N - i spaces per row (where N is the total number of rows to be printed and i is the current row number.
The step-by-step descriptive logic to print spaces is:

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

Lets now code this.


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.