Write a recursive function to reverse the elements of an array.
#include<stdio.h> void Reverse_ele_Rec(int*,int*); void Print_Array_Elements(int*,int); int main() { int a[5] = {10,20,30,40,50}; int i; int Total_Elements = sizeof(a)/sizeof(a[0]); Print_Array_Elements(a,Total_Elements); Reverse_ele_Rec(a,&a[Total_Elements-1]); Print_Array_Elements(a,Total_Elements); return 0; } void Reverse_ele_Rec(int*p,int*q) { int temp; if(p < q) { temp = *p; *p = *q; *q = temp; Reverse_ele_Rec(p+1,q-1); } } void Print_Array_Elements(int *p,int n) { int i = 0; while(i < n) { printf("%d ",p[i]); i++; } printf("\n"); }
Output
10 20 30 40 50 50 40 30 20 10