Étant donné les variables char * name1, name2 et name3, écrivez un fragment de code qui affecte la plus grande valeur à la variable max (supposons que les trois ont déjà été déclarées et ont reçu des valeurs).Aide avec chaînes en C
J'ai essayé et est venu avec ceci:
if ((strcmp(name1,name2)>0)&&(strcmp(name1,name3)>0)){
max=name1;
}
else if ((strcmp(name2,name1)>0)&&(strcmp(name2,name3)>0)){
max=name2;
}
else if((strcmp(name3,name1)>0)&&(strcmp(name3,name2)>0)){
max=name3;
}
else if(strcmp(name3,name1)==0){
max=name1,name3;
}
else if (strcmp(name2,name1)==0){
max=name2,name1;
}
else if (strcmp(name2,name3)==0){
max=name2,name3;
}
else{
max=name1,name2,name3;
}
Cependant, je reçois cette erreur Votre code est incorrect. Vous ne gérez pas la situation lorsque deux ou plusieurs chaînes sont égales.
... Résolu
Comment obtenez-vous cette erreur? Est-ce d'une personne? – WhirlWind
Le message d'erreur semble assez clair. Regardez attentivement votre code et considérez ce qu'il fait si toutes les 3 chaînes sont égales. (Entre autres cas) –
Si toutes les trois chaînes sont égales alors il n'y aurait pas la plus grande valeur ... Qu'est-ce que je manque ... – DomX23