Home / Programs / Program to print the odd number pattern with spaces 13579 3579 579 79 9
Programming Example

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

👁 2,991 Views
💻 Practical Program
📘 Step by Step Learning
Write a C program to print odd number pattern using loop. How to print the given odd number pattern using for loop in C programming. Logic to print the given number pattern using loop in C program.

Program Code

/**
 * 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.

How to learn from this program

First read the algorithm, then study the program code line by line. After that, compare the code with the output and finally go through the explanation. This approach helps learners understand both the logic and the implementation properly.