here is an example of what I get if i run my program:Code:#include <stdio.h> #define maxsize 10 void quicksort (int a, int b); //void mergesort (); float ES26[11]; int i, j, k, x=1, mean, median, mode; float *ptr, sum; int main () { printf("Input at most 10 floating point numbers, each entry followed by ENTER. \nInput 0 if you want to stop:\n"); for (i=1, j=1; j==1 || i==10; i++) { printf("%d) ", i); scanf("%f", &ES26[i]); ptr=&ES26[i]; if (*ptr==0) { x=i-1; j=2; } if (i==10) { x=i; j=2; } } if (x==2 || x==4 || x==6 || x==8 || x==10) { printf("\nYou entered %i valid entries.", x); ptr = &ES26[i]; quicksort(0, x-1); printf("\nSupposed to Quicksort."); } if (x==1 || x==3 || x==5 || x==7 || x==9) { printf("\nYou entered %i valid entries.", x); //meregesort printf("\nSupposed to Mergesort."); } //ptr = &ES26[i]; for (i=1; i<=x; i++) //for printing { ptr=&ES26[i]; printf("\nEntry %i is %f", i, *ptr); sum = sum + *ptr; } printf("\nThe mean is %f", sum/x); getchar(); getchar(); getchar(); getchar(); } void quicksort(int a, int b) { ptr=&ES26[a]; //*ptr=ES26[a]; int rtidx=0, ltidx=0, k=a, l=0; float leftarr[maxsize], rtarr[maxsize]; //float pivot = ES26[a]; if (a==b) return; while (k<b) { ++k; if(ptr[k] < ptr[a]) { leftarr[ltidx] = ptr[k]; ltidx++; } else { rtarr[rtidx] = ptr[k]; rtidx++; } } k=a; //reset k to a *ptr=ES26[a]; for(l=0; l<ltidx; ++l) ptr[k++] = leftarr[l]; ptr[k++] = *ptr; for(l=0; l<rtidx; ++l) ptr[k++] = rtarr[l]; if(ltidx>0) quicksort(a, a+ltidx-1); if(rtidx>0) quicksort(b-rtidx+1, b); }

Input at most 10 floating point numbers, each entry followed by ENTER.

Input 0 if you want to stop:

1> 11.23

2> 43.553

3> 196.4673

4> 0.8874

5> 23.67

6> 90.5

7> 0

You entered 6 valid entries.

Supposed to Quicksort.

Entry 1 is 11.230000

Entry 2 is 11.230000

Entry 3 is 23.670000

Entry 4 is 11.230000

Entry 5 is 196.467300

Entry 6 is 90.500000

Can somebody help me point out where the mistake is? Thanks a lot!