NombreDeVies probleme avec code blocks

terminator99 Messages postés 8 Statut Membre -  
fiddy Messages postés 11653 Statut Contributeur -
Bonjour, voila je vient de me lancer dans la programmation dans le site du Zéro qu'il semble bien expliquer, je sui convaincu que je fait bien les choses, voici mon code:
#include <stdio.h>
#include <stdlib.h>


int main()
{
int nombreDeVies=5, niveau=1;
printf("Vous avez %d de Vies\net vous etes au niveau n°%d\n\n"), nombreDeVies, niveau;
printf("***BAM***\n\n");
nombreDeVies=4;
printf("Ah desoler, il ne vous reste plus que %d point de vies maintenant!\n\n"), nombreDeVies;
return 0;
}
et quand je compile se code le résultat et Très étrange:

Vous avez 264 de vies
et vous etes au niveau n#66

***BAM***

ha desoler, il ne vous reste plus que 264 point de vies maintenant!

svp aidez moi je vien tous juste de commencer je sui motiver, mais je constate que mes valeur son des valeur ancien de la mémoire vive qui ne veulent pas passer à 5 et à 1. jai bien telecharger mon code Blocks comme le site du Zero l'indique, mis a par ma version et supérieure, jai la 10.05. jy comprend rien Please svp aidez moi...


A voir également:

3 réponses

Pacorabanix Messages postés 3248 Date d'inscription   Statut Membre Dernière intervention   663
 
printf("Ah desoler, il ne vous reste plus que %d point de vies maintenant!\n\n"), nombreDeVies;


la parenthèse de fin est mal placée.
0
terminator99 Messages postés 8 Statut Membre
 
Merci beaucoup :)
0
fiddy Messages postés 11653 Statut Contributeur 1 847
 
Effectivement, ce sont les parenthèses.
printf("Vous avez %d de Vies\net vous etes au niveau n°%d\n\n"), nombreDeVies, niveau;
printf("Ah desoler, il ne vous reste plus que %d point de vies maintenant!\n\n"),
Pour les deux printf, la parenthèse est mal placée. Du coup, puisqu'il n'y a pas d'arguments dans la fonction, le compilateur ira chercher les valeurs suivantes dans la pile qui sont dans votre cas 264 puis 66.

Cdlt,
0