Skip to main content

C program to print natural numbers in reverse from n to 1

 Write a C program to print all natural numbers in reverse from n to 1 using for loop. How to print natural numbers in reverse order in C programming. Logic to print natural numbers in reverse for a given range in C program.

Example

Input

Input N: 10

Output

Natural numbers from 10-1 in reverse: 
10, 9, 8, 7, 6, 5, 4, 3, 2, 1

Required knowledge

Basic C programmingRelational operatorsFor loop

Logic to print natural numbers in reverse

Logic to print natural numbers in reverse is almost similar to printing natural numbers from 1 to n.

Step by step descriptive logic to print natural numbers in reverse

  1. Input start limit from user. Store it in some variable say start.
  2. Run a loop from start to 1 and decrement 1 in each iteration. The loop structure should look like for(i=start; i>=1; i--).

    Let me first answer few question popping in your head right now.

    Why we need to initialize loop from start? Because the first value we need to print is start.

    Why use i>=1 why not i<=1? Because the loop we are constructing is in decrementing order with numbers to print must be greater than or equal to 1.

    Why decrement the value of i instead of increment? Because we are running downwards (reverse), from start to 1.

  3. Inside the loop body print the value of i.

Program to print natural numbers in reverse

/**
 * C program to all natural numbers in reverse from n to 1
 */

#include <stdio.h>

int main()
{
    int i, start;

    /* Input start range from user */
    printf("Enter starting value: ");
    scanf("%d", &start);

    /*
     * Run loop from 'start' to 1 and
     * decrement 1 in each iteration
     */ 
    for(i=start; i>=1; i--)
    {
        printf("%d\n", i);
    }

    return 0;
}

Learn more - Program to print natural numbers in reverse using while loop.

Logic to print natural number in reverse in given range

If you got above logic, then you can easily modify to print natural numbers in reverse in given range. We need to make two modification. First with loop initialization and next with loop condition.

Step by step descriptive logic to print natural numbers in reverse in given range.

  1. Input start limit to print from user. Store it in some variable say start.
  2. Input end limit to print from user. Store it in some variable say end.
  3. Run a loop from start to end, decrement the loop by 1 in each iteration. The loop structure should look like for(i=start; i>=end; i--).

Program to print natural number in reverse in given range

/**
 * C program to all natural numbers in reverse in given range
 */

#include <stdio.h>

int main()
{
    int i, start, end;

    /* Input start and end limit from user */
    printf("Enter starting value: ");
    scanf("%d", &start);
    printf("Enter end value: ");
    scanf("%d", &end);

    /*
     * Run loop from 'start' to 'end' and 
     * decrement by 1 in each iteration
     */ 
    for(i=start; i>=end; i--)
    {
        printf("%d\n", i);
    }

    return 0;
}

Output

Enter starting value: 15
Enter end value: 5
15
14
13
12
11
10
9
8
7
6
5

Comments

Popular posts from this blog

C program to find prime factors of a number

  Write a C program to input a number from user and find Prime factors of the given number using loop. C program to list all prime factors of a given number. Logic to find prime factors of a number in C programming. Example Input Input any number: 10 Output Prime factors of 10: 2, 5 Required knowledge Basic C programming ,  If statement ,  For loop ,  Nested loop What is Prime factor? Factors of a number  that are  prime numbers  are called as Prime factors of that number. For example: 2 and 5 are the prime factors of 10. Logic to check prime factors of a number Step by step descriptive logic to find prime factors. Input a number from user. Store it in some variable say  num . Run a loop from  2  to  num/2 , increment 1 in each iteration. The loop structure should look like  for(i=2; i<=num/2; i++) . You may think why loop from 2 to  num/2 ? Because prime number starts from 2 and any factor of a number  n  is ...

To Find Factorial Of A Number Using C Program

  Program 1: Factorial program in c using for loop #include <stdio.h> int main (){ int i , f = 1 , num ;   printf ( "Enter a number: " ); scanf ( "%d" ,& num );   for ( i = 1 ; i <= num ; i ++) f = f * i ;   printf ( "Factorial of %d is: %d" , num , f ); return 0 ; } Result Enter a number: 8 Factorial of 8 is: 40320 Program 2: Factorial program in c using pointers #include <stdio.h>   void findFactorial ( int , int *); int main (){ int i , factorial , num ;   printf ( "Enter a number: " ); scanf ( "%d" ,& num );   findFactorial ( num ,& factorial ); printf ( "Factorial of %d is: %d" , num ,* factorial );   return 0 ; }   void findFactorial ( int num , int * factorial ){ int i ;   * factorial = 1 ;   for ( i = 1 ; i <= num ; i ++) * factorial =* factorial * i ; } Result Enter a number: 8 Factorial of 8 is: 40320 Program 3: Factorial progra...

Questions of C Program

1. Write a C program to find the area of a circle. 2. Write a C program to find the area of a triangle. 3. Write a C program to swap two numbers without temp variable (or a third variable) 4. Write a C program to print ASCII value of the character 5. Write a C program to read a character in uppercase and then print in lowercase. 6. Write a C program to swap two numbers with temp variable 7. Write a C program to calculate the average of two number 8. Write a C program to calculate the simple interest. 9. Write a C program to find the quotient and remainder of two numbers 10.Write a C program that displays the size of every datatype. 1. Write a c program to add two integers and print the result ,inputs must be taken using scanf function. 2. Write a c program to add two float numbers without third variable and print the result ,inputs must be taken using scanf function. 3. Write a c program, to subtract two integers and print the result, inputs must be taken using scanf function. 4. Write...