si, array 128 caratteri va bene!
Per il ciclo lettura file pensavo ad un ciclo while, anche se il tuo for e break è perfettamente funzionante.
Aspetta consigli dai professionisti, io ti propongo una soluzione...
codice:
while((limite=fscanf(pi,"%s%s",&s1,&s2))!=EOF){
printf("%s %s\n",s1,s2);
if(strlen(s1)==strlen(s2)){ fprintf(pu,"%s\n",s1); printf("Le stringhe sono uguali, scrivo la prima: %s\n\n",s1);}
else if(strlen(s1)>strlen(s2)){ fprintf(pu,"%s\n",s1); printf("La stringa piu lunga e':%s\n\n",s1);}
else if(strlen(s1)<strlen(s2)){ fprintf(pu,"%s\n",s2); printf("La stringa piu lunga e':%s\n\n",s2);}
}