Duvida, progama que captura peso

Boa Tarde pessoal,
Sou iniciante em programação C.
Gostaria de uma ajuda no meu código, estou tentando fazer um progama que capture o peso da galera e no final mostre somente o maior.
Estou quebrando cabeça a horas e não consegui decifrar onde esta o meu erro. Então gostaria de pedir uma ajudinha aos colegas experts em programação.

Qualquer ajuda é bem vinda galera. Muito Obrigado

#include
#include <stdlib.h>

int main(){

int i;
char Pesado, N;
float P=0, Maior= 0;

TOPO:
system(“CLS”);
printf("\nBALANCA DO POVAO VERSAO VERSAO BRASIL");
printf("\nMaior peso ate agora: ", Maior, “KG\n”);

for( i=0; i<3; i++){
	printf("\nDigite o nome do usuario : ");
	scanf("%s",&N);
	fflush(stdin);
	printf("\nDigite o peso do usuario :");
	scanf("%f",&P);
	fflush(stdin);

if(P > Maior){
	Maior = P;
	Pesado = N;
	}
}

printf(“A pessoa mais pesada foi\n”, P,", \ncom", N, “\nQuilos” );

goto TOPO;

system(“PAUSE”);

return 0;
}

Um dos problemas é na lógica, está printando a variável P e N ao invés de Pesado e Maior.

	int i;
	char Pesado[20];
	char N[20];
	double P=0, Maior= 0;
	
	printf("\nBALANCA DO POVAO VERSAO VERSAO BRASIL");
	
	for(i=0; i<3; i++){
		printf("\nDigite o nome do usuario : ");
		scanf("%s",&N);
		
		printf("\nDigite o peso do usuario :");
		scanf("%d",&P);
	
	    if(P > Maior){
		    Maior = P;
		    strcpy(Pesado, N);	    
		    printf("\nMaior peso ate agora: %d KG", Maior);	    
		}
	}
	
	printf("\nA pessoa mais pesada foi %s com %d quilos", Pesado, Maior);
	 
	return 0;
1 curtida

Obrigado :smile:, aos poucos vou pegando as manhas dos codigos atraves dos outros codigos