| | [résolu]erreur en C... | |
| | Auteur | Message |
---|
DeinDall Utilisateur confirmé: Rang ****
Messages : 858 Localisation : Quimper
| Sujet: [résolu]erreur en C... Dim 16 Jan 2011 - 8:52 | |
| bon, voila, je débute en C et j'ai voulu créer un petit jeu sur console que consistait a survivre a des ennemis a la suite... mais voila, erreur... Mon code : - Code:
-
#include <stdio.h> #include <stdlib.h>
int main(int argc, char *argv[])
{ int vie = 20, vie_max = 20, niveau = 1, exp = 0, attaque = 5, nb_ennemi = 0, ennemi_vie, ennemi_vie_max, ennemi_attaque, choix, quit; char nom[100]; printf("Bien le bonjour...\n"); printf("tout d'abord, comment t'appelle tu?"); scanf("%s", nom); printf("Salut %s, je suis heureux de te rencontrer !", nom); while(vie > 0) { ennemi_vie = (vie/5)*4; ennemi_vie_max = (vie/5)*4; ennemi_attaque = (attaque/5)*4; choix = 0; quit = 0; nb_ennemi++; printf("\n\n\nennemi numero %d\n\n", nb_ennemi); while(quit == 0) { ennemi_attaque = (attaque/5)*4; printf("vie de %s : %d / %d\nvie de l'ennemi : %d / %d \n que voulez vous faire :\n\n1. attaque\n2. defence\n3. fuite",nom ,vie ,vie_max ,ennemi_vie, ennemi_vie_max); scanf("%d",choix); if (choix == 1) { printf("charge!"); ennemi_vie -= attaque; } if (choix == 2) { ennemi_attaque = 1; } if (choix == 3) { quit = 1; } printf("l'ennemi attaque"); vie -= ennemi_attaque; printf("vous perdez %d points de vie",ennemi_attaque); if (ennemi_vie > 0) { quit = 1; }
} printf("votre ennemi est K.O."); exp += exp/(niveau/2); if (exp >= 12) { niveau= niveau+1; exp = 0; printf("niveau superieur !!!\nvous etes au niveau %d",niveau); vie_max += 4; vie += 4; attaque += 2; } return 0; }
l'erreur : C:\Documents a...||In function 'main' C:\Documents a...|warning: format '%d' expects type 'int *', but argument 2 has type 'int'| C:\Documents a...|61|error: expected declaration or statement at end of input| ||=== Build finished: 1 errors, 1 warnings ===|
comment corriger le problème? j'ai utiliser des tutoriels sur le site du zér0...
Dernière édition par DeinDall le Dim 16 Jan 2011 - 12:15, édité 1 fois |
| | | onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [résolu]erreur en C... Dim 16 Jan 2011 - 9:23 | |
| La seule erreur que je vois en regardant vite fait c'est qu'il te manque une accolade fermante avant le return 0; déjà. |
| | | DeinDall Utilisateur confirmé: Rang ****
Messages : 858 Localisation : Quimper
| Sujet: Re: [résolu]erreur en C... Dim 16 Jan 2011 - 9:34 | |
| merci, déjà un problème de moins... ( j'ai l'habitude de faire comme dans GM niveau accolades... ) mais après, il y a toujours un bug : quand je fais le choix ( attaque, défence ou fuite... ) le programme fini... Edit :un screen pour vous faire voir... |
| | | onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [résolu]erreur en C... Dim 16 Jan 2011 - 9:41 | |
| |
| | | DeinDall Utilisateur confirmé: Rang ****
Messages : 858 Localisation : Quimper
| Sujet: Re: [résolu]erreur en C... Dim 16 Jan 2011 - 9:43 | |
| j'ai pas du suivre le cours attentivement... merci Onilink_, c'est toi le meilleur |
| | | onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [résolu]erreur en C... Dim 16 Jan 2011 - 9:45 | |
| En tout cas content que tu te mette au C. Moi je suis plus C++ mais si t'as des questions tu peut me mp (enfin le week end). |
| | | DeinDall Utilisateur confirmé: Rang ****
Messages : 858 Localisation : Quimper
| Sujet: Re: [résolu]erreur en C... Dim 16 Jan 2011 - 12:12 | |
| youhou!!! j'ai terminé le "jeu"... bon, d'accord, il suffit de faire 1, enter, 1, enter, 1, enter... c'est sans fin... code source pour ceux que ça intéresse : - Code:
-
#include <stdio.h> #include <stdlib.h>
int main(int argc, char *argv[])
{ int vie = 20, vie_max = 20, niveau = 1, exp = 0, attaque = 5, nb_ennemi = 0, ennemi_vie, ennemi_vie_max, ennemi_attaque, choix, quit, quitquit = 0; char nom[100]; printf("Bien le bonjour...\n"); printf("tout d'abord, comment t'appelle tu?"); scanf("%s", nom); printf("Salut %s, je suis heureux de te rencontrer !", nom); while(quitquit == 0) { ennemi_vie = (vie/4)*2; ennemi_vie_max = (vie/4)*2; ennemi_attaque = (attaque/4)*2; choix = 0; quit = 0; nb_ennemi++; printf("\n\n\nennemi numero %d\n\n", nb_ennemi); while(1) { ennemi_attaque = (attaque/5)*4; printf("vie de %s : %d / %d\nvie de l'ennemi : %d / %d \n\n que voulez vous faire :\n\n1. attaque\n2. defence\n\nalors 1 ou 2?",nom ,vie ,vie_max ,ennemi_vie, ennemi_vie_max); scanf("%d",&choix); if (choix == 1) { printf("\n\ncharge!\n"); ennemi_vie -= attaque; printf("l'ennemi perd %d points de vie\n\n", attaque); } if (choix == 2) { ennemi_attaque = 1; printf("\n\nvous vous defendez\n\n"); } printf("l'ennemi attaque\n"); vie -= ennemi_attaque; printf("vous perdez %d points de vie\n\n",ennemi_attaque); if (ennemi_vie <= 0) { break; } if (vie <= 0) { quitquit = 1; break;
} } printf("votre ennemi est K.O.\n\n"); exp += 12/(niveau); if (exp >= 12) { niveau++; exp -= 12; printf("niveau superieur !!!\nvous etes au niveau %d\n\n",niveau); vie_max += 4; attaque += 2; } if (quitquit == 1) { break; } vie = vie_max; ennemi_vie_max = (vie/4)*2; ennemi_vie = (vie/4)*2; ennemi_attaque = (attaque/4)*2; } return 0; }
Et oui, je me met au C, il faut bien que je commence vraiment a programmer un jour ou un autre... |
| | | Contenu sponsorisé
| Sujet: Re: [résolu]erreur en C... | |
| |
| | | | [résolu]erreur en C... | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |