Print the given number pattern
    5
   44
  333
 2222
11111

C Programming Language / Loop control in C Language

4550

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", (N - i + 1));
        }

        printf("\n");
    }

    return 0;
}

Output:

----5
---44
--333
-2222
11111

Explanation:

Logic to print the given number pattern

Now once you are done with the previous number pattern, doing this wouldn't be much trouble. As it only needs to add trialing spaces before the number gets printed. Now if you hover mouse to the pattern you can actually count the spaces per row and can define a logic to print spaces. Actually, each row contains N - spaces (where N is the total number of rows to be printed and i is the current row number). Hence, the descriptive logic of printing space is:

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

Let's implement this the code.


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.