Devo realizzare questo esercizio:
/* Nelle gare di tuffi, ognuno dei giudici di gara attribuisce al concorrente
un punteggio; il punteggio finale viene ottenuto calcolando la media, dopo
avere scartato il valore più alto e il più basso fra i punteggi ottenuti.
Scrivere un programma che, per un certo numero di concorrenti, riceva in input
il nome e i relativi 10 punteggi e produca in output il punteggio finale di
ciascun concorrente. */


E mettendomi a smanettare ho trovato un problema nel calcolo del valore minimo e massimo dei punteggi di ciascun concorrente, mi calcola il massimo ma non il minimo. Tempo fa ho fatto un esercizio simile e funzionava tutto, ho provato ad applicare le stesse regole a questo ma non va.. Dove sbaglio?

#include <stdio.h>
#include <stdlib.h>
main()
{
int nc;
float contPTG=0, PTG, sommaPTG=0, mPTG, min, max, fPTG;
char nome[20];
printf("Inserisci il numero dei concorrenti: ");
scanf("%d", &nc);
while (nc>0)
{
printf("Inserisci nome: ");
scanf("%s", &nome);
printf("Inserisci il numero dei punteggi: ");
scanf("%f", &contPTG);
while (contPTG > 0)
{
printf("Inserisci punteggi: ");
scanf("%f", &PTG);
if (PTG>max) max=PTG;
if (PTG<min) min=PTG;
sommaPTG += PTG;
contPTG--;
}
printf("La somma dei punteggi e': %f \n", sommaPTG);
printf(" Il punteggio massimo e' = %f\n", max);
printf(" Il punteggio minimo e' = %f\n", min);
sommaPTG = 0;
nc--;
}
system("pause");
}