This seemingly right code, don't know why gives 0 always as output. Please, help debugging it...
Code:#include <stdio.h> int min(int *arr,int size) { static int *m; if(!m) m=arr; return size ? ( *m>*++arr ? min((m=arr),size-1) : min(arr,size-1) ) : *m; } int main(void) { int i,size; printf("Enter array size:"); scanf("%d",&size); int arr[size]; printf("Enter array elements:"); for(i=0;i<size;i++) scanf("%d", arr+i); printf("The minimum no. is %d",min(arr,size)); return 0; }