Je n'arrive pas à résoudre Error "else" without a previous "if&qu

Fermé
Mushroom159753 Messages postés 2 Date d'inscription dimanche 17 février 2013 Statut Membre Dernière intervention 17 février 2013 - Modifié par Mushroom159753 le 17/02/2013 à 05:02
Mushroom159753 Messages postés 2 Date d'inscription dimanche 17 février 2013 Statut Membre Dernière intervention 17 février 2013 - 17 févr. 2013 à 14:57
Voilà mon programme en C, je n'arrive pas à trouver où est la faute que j'ai faite.. :/ Merci de me répondre au plus vite :

#include <stdio.h>
#include <stdlib.h>

int main()
{
int NombreDeVie = 5; // Au départ, le joueur a 5 vies
printf("Vous avez %d vies\n\n", NombreDeVie);
printf(".................................."); // Là il se blesse.

int Resultat = NombreDeVie - 1; //On fait soustrait 1 au nombre de vie initial.

NombreDeVie = Resultat; // Il vient de perdre "Resultat" de vie !

printf("............... Il te reste plus que %d vie !\n", NombreDeVie);

int Age = 0; // On initialise son age à 0
printf (".................................");

scanf("%d/n", &Age); // On demande au joueur d'entrer son age avec scanf.
if (Age >= 10 && Age < 18)
{
printf("..................................");
}
else if (Age >= 18);
{
printf("................................. ");
}
else
{
printf ("................................");
}

}

1 réponse

Utilisateur anonyme
17 févr. 2013 à 08:34
Bonjour

L'erreur est là :
else if (Age >= 18); 

ton if (Age >= 18) comme tous les if doit être suivi d'une instruction.
Et dans ton cas, tu as mis une instruction vide (un point virgule seul). alors que tu pensais mettre le bloc d'instructions puis le else. Mais à cause de ce point virgule, le bloc qui suit entame une nouvelle instruction, ton if est terminé et le else plus loin n'a donc pas de if qui lui correspond.
Il suffit de retirer ce point virgule
0
Mushroom159753 Messages postés 2 Date d'inscription dimanche 17 février 2013 Statut Membre Dernière intervention 17 février 2013
17 févr. 2013 à 14:57
Merci beaucoup, ça a marché :)
0