Write a recursive function to find biggest number from an array.
#include<stdio.h> #include<limits.h> int Find_Biggest_From_Array(int*,int); int main() { int IntArray[10],TotalArrayElements,BiggestNum,SmallestNum; int Index; TotalArrayElements = sizeof(IntArray)/sizeof(IntArray[0]); for(Index = 0;Index < TotalArrayElements;Index++) { IntArray[Index] = Index + 11; } printf("\nValues are"); for(Index = 0;Index < TotalArrayElements;Index++) { printf("\nIntArray[%d] = %d",Index,IntArray[Index]); } printf("\n"); BiggestNum = Find_Biggest_From_Array(IntArray,TotalArrayElements); printf("\nBiggest Number is = %d\n",BiggestNum); return 0; } int Find_Biggest_From_Array(int *a,int n) { static int max = -(INT_MAX); static int i = 1; if(i <= n) { if(*(a) > max) max = *a; i++; a++; Find_Biggest_From_Array(a,n); } else return max; }
Output
Values are IntArray[0] = 11 IntArray[1] = 12 IntArray[2] = 13 IntArray[3] = 14 IntArray[4] = 15 IntArray[5] = 16 IntArray[6] = 17 IntArray[7] = 18 IntArray[8] = 19 IntArray[9] = 20 Biggest Number is = 20