Program to print the odd number pattern with spaces
13579
 3579
  579
   79
    9

C Programming Language / Loop control in C Language

3000

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=1; i<=N; i++)
    {
        k = (i * 2) - 1;

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

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

        printf("\n");
    }

    return 0;
}

Output:

13579
 3579
  579
   79
    9

Explanation:

Logic to print the odd number pattern with spaces

 

13579
 3579
  579
   79
    9

 

The above pattern is similar to the previous we just printed above except the trailing spaces printed before the numbers. The logic for printing numbers will be similar as first pattern we printed, we only need to add logic of printing spaces. As you can see that each row contains exactly i - 1 spaces (where i is the current row number). You can also hover on to the pattern to see or count total spaces per row.

Step-by-step descriptive logic to print spaces:

  1. To print spaces, run an inner loop from 1 to i - 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.