Sono andato avanti con l'esercizio ma il do while non mi funziona:
#include <stdio.h>
#include <stdlib.h>
#define N 80
int main()
{
char s[N],nome[N],sesso,nomed,nomeu;
int peso,i,j,maxu=0,maxd=0;
do{
printf("Inserire i dati:");
fgets(s,N,stdin);
if(s!='fine'){
sscanf(s,"%s %c %d",nome,&sesso,&peso);
}
if (sesso=='d'){
if (peso>maxd){
maxd=peso;
nomed=nome;
}
}
if (sesso='u'){
if(peso>maxu){
maxu=peso;
nomeu=nome;
}
}
}
while (s!='fine\n');
printf("La donna che pesa di più è %s che pesa %c\n",nomed,maxd);
printf("L'uomo che pesa di più è %s che pesa %c",nomeu,maxu);