C Tutorial

C Tutorial C Language Environment Setup Execution flow of C program C printf and Scanf C Data type C Token Variable in C Operators in C Comments in C Escape Sequence in C C – Storage Classes C Decision control statement Loop Statement in C Break, continue and goto statement in C Type Casting in C Function in C Recursion in C String in C C Array Pointer in C Dynamic memory allocation C –Structure Nested Structure in C Union in C File Handling in C C pre-processor Static Function In C Sizeof In C Selection Sort In C Scope Of Variables In C Runtime Vs Compile Time In C Random Access Lseek In C Queue Implementation In C Pseudo Code In C Prototype In C Pointer To Pointer In C Pointer Arithmetic In C Passing Array To Function In C Null Character In C Merge Sort In C Macros In C Library Functions In C Memory Leak In C Int In C Goto And Labels In C Fibonacci Series In C Fflush In C Derived Data Types In C Data Types In C Const Vs Volatile In C Character Set In C Character Class Tests In C Calloc In C C Pointers Arrays In C Include In C Clrscr In C C Vs Java String Literals In C Types Of Pointers In C Variables In C Volatile In C Why C Is A Middle Level Language Infix To Postfix Program In C Ceil function in C LCM of two numbers in C Quick sort in C Static in C function pointer as argument in C Top Array Keywords in C Add two numbers using the function in C Armstrong program in C using function Array, Declaring Arrays and Array Initialization Limitations of Inline Function in C Merge and Merge sort with example in C Do-While Loop in C For Loop in C While-Loop in C Difference between while and do-while loop in C Array Of Structures in C Data Structures And Algorithms in C Types Of Structures In C How to Avoid Structure Padding in C Use of Structure in C Do WHILE LOOP in C Programming Examples For Loop in C Programming Examples Entry Control Loop in C Exit control loop in C Infinite loop in C Nested loop in C pow() function in C String Handling functions in C Prime Number code in C Factorial Program in C using For Loop Factorial Program in C Using While Loop Fibonacci Series in C Using For Loop Fibonacci series in C using while loop Prime Number Program in C using for Loop While Loop in C programming examples Built-in functions in C Assert() Function C vs Java Strings Call Back Function in Embedded C Else If Ladder fgets() function Ftell() Function getc() function getch() function gets() function Heap Sort Nested if-else statement Pi() Function Positioning of file Write() function abs() function in C Attributes in C C program to find factorial of a number using Recursion Ferror() in c fopen() function in C Fibonacci series program in C using Recursion Formatted Input and output function in C Snake Game in C User Defined Functions in C Beep() function in C Cbrt() function in C Hook() function in C Isalnum() function in C C Program to find the Roots of a Quadratic Equation C Switch Statements Difference between rand() and srand() function in C Difference between while and for loop in C Doubly Linked list in C Example of Iteration in C How to use atoi() function in C How to use floor() function in C How to use sine() function in C How to use Typedef Struct in C Integer Promotions in C C Program Swap Numbers in cyclic order Using Call by Reference C Program to Find Largest Number Using Dynamic Memory Allocation C Program to Find the Largest Number using Ternary Operator C/C++ Program to Find the Size of int, float, double and char Find the Largest Three Distinct Elements in an Array using C/C++ Loop Questions in C Modulus on Negative Numbers in C Multiplication table program in C using For loop Nested Loops in C Programming Examples C Program for Mean and Median of an Unsorted Array Results of Comparison Operations in C and C++ Reverse a Stack using Recursion in C Simple hash() function in C strcat() Function in C Sum of N numbers in C using For loop Use of free() function in C Write a program that produces different results in C and C++ C Function Argument and Return Values Keywords in C Bank management system in C Calendar application in C Floor() Function in C Free() Function in C How to delete a file in C How to move a text in C Remove an element from an array in C Unformatted input() and output() function in C What are linker and loader in C

Find reverse of an array in C using functions

Introduction: Here, we describe how to find the reverse array in C using functions. Suppose you have an array with n elements. I need to display the elements present in the array in reverse. (Don't print in reverse order, reverse the elements). So, if the input is: n = 6; arr = [2, 9, 1, 3, 5, 7] the output is [7, 5, 3, 1, 9, 2]

solve

Do this Follow these steps to –

For initialize i := 0, if i < Quotient of n/2:
temp := arr[i]
arr[i] := arr[n - i - 1]
arr[n - i - 1] := temp
For initialize i := 0, if i < n:
display arr[i]

If there is four array like:

arr [0] = 5

arr [1] = 4

arr [2] = 3

arr [3] = 2

After reversing the array is:

arr [0] = 2

arr [1] = 3

arr [2] = 4

arr [3] = 5

In C, you can reverse arrays in four different ways: for loops, pointers, recursion, or writing functions.

Example 1: Here, we give an example of finding the reverse of an array in C using the function given below.

#include < stdio.h >  
#include < stdlib.h >  
#include < conio.h >  
#include < math.h >  
void reverse ( int arr [ 10 ] , int n )  
{  
 int i, tmp ;  
 for ( i = 0 ; i < n / 2 ; i + + )  
{  
 tmp = arr [ i ] ;  
arr [ i ] = arr [ n - 1 - i ] ;  
arr [ n - 1 - i ] = tmp ;  
}  
}  
int main ( )  
{  
int arr [ 100 ] , i , size ;  
printf ( " Enter the size of the array : " ) ;  
scanf ( " % d " , & size ) ;  
printf ( " Enter the elements of the array is : " ) ;  
for ( i = 0 ; i < size ; i + + )  
scanf ( " % d " , & arr [ i ] ) ;  
printf ( " After reversing the array is : " ) ;  
for ( i = 0 ; i < size ; i + + )  
{  
printf ( " % d " , arr [ i ] ) ;  
}  
return 0;  
}  

Output: Now we compile the program and also run it. After compilation, the result is found, which is given below.

Enter the size of the array: 4
Enter the elements of the array is: 5 6 7 8
After reversing the array is: 8 7 6 5

Explanation of the above program: The example C program above showed how to use a function to reverse an array. I created a custom inverse function that takes the array and the size of the array as parameters and created a tmp variable to swap the numbers.

Example 2: Now, here we give another example of finding the reverse of an array in C using the function given below.

#include <stdio.h>
#include <stdlib.h>
#define n 6
int main()
{
int arr[n] = {5, 6, 8, 3, 1, 2};
int temp;
for (i=0; i<n/2; i++)
{
temp = arr[i];
arr[i] = arr[n-i-1];
arr[n-i-1] = temp;
}
for (i=0; i<n; i++)
{
Printf(“%d”, arr[i]);
}
}	

Output: Now we compile the program and also run it. After compilation, the result is found, which is given below.

2, 1, 3, 8, 6, 5

Explanation of the above program: I created a custom inverse function that takes the array and the size of the array as parameters and created a tmp variable to swap the numbers.

Example 3: Now, here we give another example of finding the reverse of an array in C using the function given below.

#include <stdio.h>  
#include <conio.h>
#include <math.h>
void print (int arr[], int n)  
{  
for (int i = 0; i < n; i++) {  
printf ("%d ", arr[i]);  
}  
}  void reverse (int arr[], int i, int n)  
{    
if (i >= n) {  
return;  
 }  
int value = arr[i];  
reverse (arr, i + 1, n);   
arr[n - i - 1] = value;  
}  
int main(void)  
{  
int arr[] = {6, 8, 3, 1, 2};  
int n = sizeof(arr)/sizeof(arr[0]);   
reverse(arr, 0, n);  
print(arr, n);   
return 0;  
}  

Output: Now we compile the program and also run it. After compilation, the result is found, which is given below.

2, 1, 3, 8, 6

Explanation of the above program: The other is a repeat system that pushes items onto the call stack before returning the items to the same item in the correct order at the end of the repeat.



ADVERTISEMENT
ADVERTISEMENT