#include const int MAXNUMBERS = 500; const int MAXRANGE = 16; int findMax(int array[]) { int max=0; // Complete this section return max; } void initArray(int tally[]) { int i; for(i=0; i array[j]) minIndex=j; } temp=array[i]; array[i]=array[minIndex]; array[minIndex]=temp; } } int kthDataValue(int array[], int n) { // ... complete this section } int main() { int val; int tally[MAXRANGE]; int values[MAXNUMBERS]; int* modes; int mode, numModes, numValues; int count,n; FILE *infile = fopen("tallyfile.txt", "r"); count=0; initArray(tally); while(fscanf(infile,"%d", &val) != EOF && count < MAXNUMBERS) { // Complete this section count++; } numValues=count; printArray(tally); mode = findMax(tally); printf("Max frequency=%d\n", mode); numModes = countModes(tally, mode); modes = (int *)malloc(sizeof(int)*numModes); findModes(tally, modes, numModes, mode); printModes(modes, numModes); count=0; freopen("tallyfile.txt", "r", infile); while(fscanf(infile,"%d", &val) != EOF && count < MAXNUMBERS) { values[count]=0; count++; } numValues=count; sortArray(values, numValues); printf("Which data value? "); scanf("%d", &n); val = kthDataValue(values,n-1); printf("data=%d\n", val); free(modes); fclose(infile); return 0; }