Tutorial Gateway

  • C
  • C#
  • Java
  • Python
  • SQL
  • MySQL
  • Js
  • BI Tools
    • Informatica
    • Talend
    • Tableau
    • Power BI
    • SSIS
    • SSRS
    • SSAS
    • MDX
    • R Tutorial
    • Alteryx
    • QlikView
  • More
    • C Programs
    • C++ Programs
    • Python Programs
    • Java Programs

C Program to Reverse an Array

by suresh

How to write a C Program to Reverse an Array using While Loop, For loop, Functions, and Recursion with example?.

C Program to Reverse an Array using While Loop

This reverse array program allows the user to enter the array size and the array elements. Next, this C program to reverse array will reverse the given array elements using While Loop

/* C Program to Reverse an Array using While loop */
#include<stdio.h>
 
int main() 
{
   int a[100], i, j, Size, Temp;
 
   printf("\nPlease Enter the size of an array: ");
   scanf("%d",&Size);
 
   //Inserting elements into the array
   for (i = 0; i < Size; i++) 
   {
      scanf("%d", &a[i]);
   }
 
   j = i - 1;   // Assigning j to Last array element
   i = 0;       // Assigning i to first array element
 
   while (i < j) 
   {
      Temp = a[i];
      a[i] = a[j];
      a[j] = Temp;
      i++;             
      j--;         
   }
 
   printf("\nResult of an Reverse array is: ");
   for (i = 0; i < Size; i++) 
   {
      printf("%d \t", a[i]);
   }
 
   return 0;
}

OUTPUT

C Program to Reverse an Array using While Loop

ANALYSIS

The following statements in this reverse array in c program ask the user to enter the array size and assign the user entered a value to Size variable

   printf("\nPlease Enter the size of an array: ");
   scanf("%d",&Size);

The below For loop in reverse array program will help to iterate each cell present in a[5] array. For loop iteration will start at 0, and the condition inside the for loops (i < Size) will ensure the compiler, not to exceed the array limit.

Scanf statement inside the C programming for loop will store the user entered values in every individual array element such as a[0], a[1], a[2], a[3] and a[4]

   //Inserting elements into the array
   for (i = 0; i < Size; i++) 
   {
      scanf("%d", &a[i]);
   }

Next, The Condition inside the While loop will make sure that the i value is less than j. Inside the while loop, we performed the Swapping with the help of the third variable.

If you want to perform the swapping without any temporary variables, then please refer Swapping without using Temp Variable article.

Last, We used the for loop to print the reversed array to the console output.

   for (i = 0; i < Size; i++) 
   {
      printf("%d \t", a[i]);
   }

C Program to Reverse an Array using For Loop

This program of the reverse array allows the user to enter the array size and the array elements. Then, this program will reverse the given array elements using For Loop

/* C Program to Reverse an Array using For Loop */
#include<stdio.h>
 
int main() 
{
   int a[100], b[100], i, j, Size;
 
   printf("\nPlease Enter the size of an array: ");
   scanf("%d",&Size);
 
   //Inserting elements into the array
   for (i = 0; i < Size; i++) 
   {
      scanf("%d", &a[i]);
   }
 
   for(i = Size-1, j = 0; i >= 0; i--, j++) 
   {
      b[j] = a[i];     
   }
 
   printf("\nResult of an Reverse array is: ");
   for (i = 0; i < Size; i++) 
   {
      printf("%d \t", b[i]);
   }
 
   return 0;
}

ANALYSIS: In this example, we just replaced the while loop of c reverse array with For Loop. Apart from that, everything is the same.

OUTPUT

C Program to Reverse an Array using For Loop

C Program to Reverse an Array using Functions

This reverse array program allows the user to enter the array size and the array elements. Next, this program will reverse the given array elements using Functions.

//  C Program to Reverse an Array using Functions
#include<stdio.h>
void ArrayReverese(int a[], int Start, int End);
void printArray(int a[], int Size);

int main() 
{
   int a[100], i, Size;
 
   printf("\nPlease Enter the size of an array: ");
   scanf("%d",&Size);
   
   //Inserting elements into the Declared Array
   for (i = 0; i < Size; i++) 
   {
      scanf("%d", &a[i]);
   }

    ArrayReverese(a, 0, Size-1);//Array Reverse
    printf("Result of an Reverse array is: \n");
    printArray(a, Size); //Printing Array    
    return 0;
}

/* Function to Reverse the Given Array */
void ArrayReverese(int a[], int Start, int End)
{
   int Temp;
   while (Start < End) 
   {
      Temp = a[Start];
      a[Start] = a[End];
      a[End] = Temp;
      Start++;             
      End--;         
   }  
}     

/* Function to print the Array Output */
void printArray(int a[], int Size)
{
  int i;
  for (i = 0; i < Size; i++) 
   {
      printf("%d ", a[i]);
   }
  printf("\n");
}

OUTPUT

C Program to Reverse an Array using Functions

ANALYSIS

When the compiler reaches to ArrayReverse (a, 0, Size – 1) line in the main() program of a reverse array in c, the compiler will immediately jump to the following function and executed the code inside that function. Here, it is reversing the array

void ArrayReverese(int a[], int Start, int End)

Next, we also declared one more function to print the Array. When the compiler reaches to printArray (a, Size) line in the main() program, the compiler will immediately jump to the following function and executed the code inside that function.

void printArray(int a[], int Size)

We already explained the Code or logic in the above example.

C Program to Reverse an Array using Recursion

This program for reverse array allows you to enter the array size and the array elements. Next, this program will reverse the given array elements using Recursion

//  C Program to Reverse an Array using Recursion
#include<stdio.h>

void ArrayReverese(int a[], int Start, int End);
void printArray(int a[], int Size);

int main() 
{
   int a[100], i, Size;
   printf("\nPlease Enter the size of an array: ");
   scanf("%d",&Size);
   //Inserting elements into the Declared Array
   for (i = 0; i < Size; i++) 
   {
      scanf("%d", &a[i]);
   }
    ArrayReverese(a, 0, Size-1); //Array Reverse
    printf("Result of an Reverse array is: \n");
    printArray(a, Size); //Printing Array   
    return 0;
}

/* Function to Reverse the Given Array */
void ArrayReverese(int a[], int Start, int End)
{
   int Temp;
   if (Start < End)
   {
      Temp = a[Start];
      a[Start] = a[End];
      a[End] = Temp;
      ArrayReverese(a, Start + 1, End - 1);        
   }  
}     

/* Function to print the Array Output */
void printArray(int a[], int Size)
{
  int i;
  for (i = 0; i < Size; i++) 
   {
      printf("%d ", a[i]);
   }
  printf("\n");
}

OUTPUT

C Program to Reverse an Array using Recursion

ANALYSIS

In this reverse array in c program, When the compiler reaches to ArrayReverse (a, 0, Size – 1) line in the main() program, the compiler will immediately jump to the following function and executed the code inside that function. Here, it is reversing the array

void ArrayReverese(int a[], int Start, int End)

Within the above function of a reverse array in c program, If statement will check whether the Start position is less than End position. If the condition is TRUE, then only statements inside this If block will execute.

Inside the If statement, we wrote the following statement to call the function Recursively with the updated value. If you miss this statement in this reverse array program, then after completing the first line, it will terminate.

ArrayReverese(a, Start + 1, End - 1);

Next, we also declared one more function to print the Array. When the compiler reaches to printArray (a, Size) line in the main() program, the compiler jumps immediately to the following function and executes the code inside that function.

void printArray(int a[], int Size)

We already explained the Code or logic for reverse an array in c in the above example.

Placed Under: C Programs

  • C Hello World
  • C Add Two numbers
  • C Armstrong Number Program
  • C Convert Celsius to Fahrenheit
  • C Convert Decimal to Binary
  • C Convert Decimal to Octal
  • C Convert CM to Meter and KM
  • C Convert KM to M, CM & MM
  • C Convert Fahrenheit to Celsius
  • C Compound Interest Program
  • C Count Digits in a Number
  • C Count Notes in an Amount
  • C Cube of a Number
  • C Electricity Bill Program
  • C Factors of a Number Program
  • C Factorial of a Number Program
  • C GCD of Two Numbers
  • C Generic Root of a Number
  • C Gross Salary of an Employee
  • C Largest of Two Numbers
  • C Largest of Three numbers
  • C Last Digit Of a Number
  • C LCM of Two Numbers
  • C Leap Year program
  • C Multiplication Table program
  • C Natural Numbers from 1 to N
  • C Natural Numbers in reverse
  • C NCR Factorial of a Number
  • C Number is Divisible by 5 and 11
  • C Palindrome Program
  • C Palindrome String program
  • C Perfect Number Program
  • C Profit or Loss Program
  • C Print 1 to 100
  • C Print Prime Numbers 1 to 100
  • C Prime Number program
  • C Prime Factors of a Number
  • C Prime, Armstrong or Perfect
  • C Positive or Negative program
  • C Print Odd Numbers 1 to N
  • C Print Even Numbers 1 to N
  • C Print Integer, Char & Float
  • C Power of a Number program
  • C Product of Digits in a Number
  • C Roots of a Quadratic Equation
  • C Reverse a Number
  • C Simple Calculator Program
  • C Simple Interest
  • C Square of a Number
  • C Square Root of a Number
  • C Standard Deviation program
  • C Strong Number Program
  • C Student Grade program
  • C Sum of Odd Numbers program
  • C Sum of Even Nums program
  • C Sum of Even and Odd Nums
  • C Swap First & Last digit of Num
  • C Sum of First & Last digit Num
  • C Sum of Digits of a Number
  • C Sum of N Numbers Program
  • C Sum and Average of n Number
  • C Swap 2 Numbers
  • C Total, Avg & % of Five Subjects
  • C Quick Sort
  • C Selection Sort
  • C Insertion Sort
  • C Bubble Sort
  • C Fibonacci Series Program
  • C Nth Fibonacci number
  • C Sum of AP Series
  • C Sum of GP Series
  • C Sum of series 1³+2³+3³+….+n³
  • C Sum of series 1²+2²+3²+….+n²
  • C ASCII value of String chars
  • C Print Characters in a String
  • C Compare Two Strings
  • C Concatenate Two Strings
  • C Copy String
  • C String length program
  • C Convert String to Lowercase
  • C First Occurrence of string char
  • C First Occur of String Word
  • C Count Occur of string Char
  • C Count Alphabets, Digits & Special Chars
  • C Count Vowels & Consonants
  • C string remove all Occ of char
  • C remove 1st Occ of char in string
  • C remove last Occ char in string
  • C replace All Occ of char in string
  • C Replace last Occ of String Char
  • C Replace 1st occ char in string
  • C Reverse words Order in string
  • C Reverse a String
  • C Toggle Case of all char in string
  • C Array Arithmetic Operations
  • C Matrix Arithmetic Operations
  • C Count Frequency of array item
  • C Count Duplicate Array items
  • C Count +ve & -Ve Array items
  • C Count Even & Odd Array items
  • C Copy an Array to another
  • C Delete Duplicate Array items
  • C Delete an Element in an Array
  • C insert an Element in an Array
  • C 2nd largest Number in an Array
  • C Find Largest Array Number
  • C Find Smallest Array Number
  • C Largest & Smallest Array item
  • C Merge Two Arrays
  • C Print Unique Array Elements
  • C Print Arrayy Elements
  • C Print Negative Array Numbers
  • C Print Positive Array Numbers
  • C Put +ve & -Ve in 2 Arrays
  • C Put Even & Odd in 2 Arrays
  • C Program to Reverse an Array
  • C Search an Element in an Array
  • C Sum of array even, odd nums
  • C Sort Array in Ascending Order
  • C Sort Array in Descending
  • C Swap 2 Arrays without Temp
  • C Sum of all Array Elements
  • C Sum of each Matrix column
  • C sum of each row in a Matrix
  • C Sum of Matrix row & column
  • C Add Two Matrices
  • C Sparse Matrix
  • C Symmetric Matrix
  • C Identity Matrix
  • C Interchange Matrix Diagonals
  • C Check two Matrices Equal
  • C Lower Triangle of a Matrix
  • C Upper Triangle of a Matrix
  • C Sum of Lower Triangle Matrix
  • C Sum of Upper Triangle Matrix
  • C Subtract Two Matrices
  • C Transpose of a Matrix program
  • C Cuboid Volume & Surface Area
  • C Cone Volume & Surface Area
  • C Cube Volume & Surface Area
  • C Volume & Surface of Cylinder
  • C Volume & Surface of Sphere
  • C Tutorial
  • C# Tutorial
  • Java Tutorial
  • JavaScript Tutorial
  • Python Tutorial
  • MySQL Tutorial
  • SQL Server Tutorial
  • R Tutorial
  • Power BI Tutorial
  • Tableau Tutorial
  • SSIS Tutorial
  • SSRS Tutorial
  • Informatica Tutorial
  • Talend Tutorial
  • C Programs
  • C++ Programs
  • Java Programs
  • Python Programs
  • MDX Tutorial
  • SSAS Tutorial
  • QlikView Tutorial

Copyright © 2021 | Tutorial Gateway· All Rights Reserved by Suresh

Home | About Us | Contact Us | Privacy Policy