NombreDeVies probleme avec code blocks

Fermé
terminator99 Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 24 janvier 2017 - 1 févr. 2012 à 20:13
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 - 8 févr. 2012 à 18:34
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 jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
1 févr. 2012 à 21:15
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 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 24 janvier 2017
8 févr. 2012 à 18:21
Merci beaucoup :)
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 842
8 févr. 2012 à 18:34
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