Bonjour, j'ai commencé a programmer il y a quelques jours en C avec l'IDE Code Block, puis j'ai décider d'utiliser eclipse (parce il me semble meilleur), sauf que j'avais un code sous Code Block qui fontionnait parfaitement mais lorsque le met sous eclipse rien ne s'affiche et lorsque j'arrette le code une boucle infinie se crée affichant "recommencer". Pourtant eclispe semble être bien configurer, j'ai télécharger MinGW et Msys et un simple Hello world fonctionne, donc je suis perdu.
voici mon code(C'est un jeux de Tic Tac Toe):
#include <stdio.h>
#include <stdlib.h>
int a=0,b=0,c=0,d=0,e=0,f=0,g=0,h=0,i=0;
int coups=0, rejouer=1;
int s1=0, s2=0, pj=1;
int choix3=0;
int option=0;
void ecran()
{
printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nTic Tac Toe\n\n");
printf("|%d|%d|%d|\n",a,b,c);
printf("|-|-|-| Coups %d\n",coups);
printf("|%d|%d|%d|\n",d,e,f);
printf("|-|-|-| Score %d a %d\n",s1,s2);
printf("|%d|%d|%d|\n",g,h,i);
}
void joueur1()
{
int choix1=0;
printf("\nC'est le tour du joueur 1\n");
while (1)
{
scanf("%d",&choix1);
if (choix1==7&&a==0)
{
a=1;
break;
}
else if (choix1==8&&b==0){
b=1;
break;
}
else if (choix1==9&&c==0){
c=1;
break;
}
else if (choix1==4&&d==0){
d=1;
break;
}
else if (choix1==5&&e==0){
e=1;
break;
}
else if (choix1==6&&f==0){
f=1;
break;
}
else if (choix1==1&&g==0){
g=1;
break;
}
else if (choix1==2&&h==0){
h=1;
break;
}
else if (choix1==3&&i==0){
i=1;
break;
}
else
printf("\nrecommecer!\n");
}
coups++;
ecran();
}
void joueur2()
{
int choix2=0;
printf("\nC'est le tour du joueur 2\n");
while (1)
{
scanf("%d",&choix2);
if (choix2==7&&a==0)
{
a=2;
break;
}
else if (choix2==8&&b==0){
b=2;
break;
}
else if (choix2==9&&c==0){
c=2;
break;
}
else if (choix2==4&&d==0){
d=2;
break;
}
else if (choix2==5&&e==0){
e=2;
break;
}
else if (choix2==6&&f==0){
f=2;
break;
}
else if (choix2==1&&g==0){
g=2;
break;
}
else if (choix2==2&&h==0){
h=2;
break;
}
else if (choix2==3&&i==0){
i=2;
break;
}
else
printf("\nrecommecer!\n");
}
coups++;
ecran();
}
int victoire()
{
if(a==1&&b==1&&c==1)
return 1;
else if(d==1&&e==1&&f==1)
return 1;
else if(g==1&&h==1&&i==1)
return 1;
else if(a==1&&d==1&&g==1)
return 1;
else if(b==1&&e==1&&h==1)
return 1;
else if(c==1&&f==1&&i==1)
return 1;
else if(a==1&&e==1&&i==1)
return 1;
else if(c==1&&e==1&&g==1)
return 1;
//2e joueur
else if(a==2&&b==2&&c==2)
return 2;
else if(d==2&&e==2&&f==2)
return 2;
else if(g==2&&h==2&&i==2)
return 2;
else if(a==2&&d==2&&g==2)
return 2;
else if(b==2&&e==2&&h==2)
return 2;
else if(c==2&&f==2&&i==2)
return 2;
else if(a==2&&e==2&&i==2)
return 2;
else if(c==2&&e==2&&g==2)
return 2;
// Aucune victoire
else
return 0;
}
int main(int argc, char **argv)
{
printf("Tic Tac Toe\n\n");
printf("Reglement:\n\n");
printf("Ne JAMAIS inscrire de lettre !\n\n");
printf("Pour placer votre jetons appuyer\nsur le chiffre correspondant a \nl'emplacement voulu du Pave numerique.\n\n");
printf("Par defaut le 1er joueur est\nchange a chaque tour, appuyer\nsur 0 pour continuer ou appuyer\nsur 1 pour changer le 1er joueur\nselon les victoires.\n");
scanf("%d",&choix3);
if(choix3==0)
option=0;
else if(choix3==1)
option=1;
do
{
ecran();
while(1)
{
if(pj==1)
{
joueur1();
if(victoire()==1)
{
printf("\n\nLe joueur 1 a gagne");
s1++;
break;
}
else if(coups==9)
{
printf("\n\nPartie nul");
break;
}
joueur2();
if(victoire()==2)
{
printf("\n\nLe joueur 2 a gagne");
s2++;
break;
}
}
if(pj==2)
{
joueur2();
if(victoire()==2)
{
printf("\n\nLe joueur 2 a gagne");
s2++;
break;
}
else if(coups==9)
{
printf("\n\nPartie nul");
break;
}
joueur1();
if(victoire()==1)
{
printf("\n\nLe joueur 1 a gagne");
s1++;
break;
}
}
}
if(option==0)
{
if(pj==1)
pj=2;
else if(pj==2)
pj=1;
}
else if(option==1)
{
if(victoire()==1)
pj=1;
else if(victoire()==2)
pj=2;
}
a=0;b=0;c=0;d=0;e=0;f=0;g=0;h=0;i=0;coups=0;
printf("\n\nVoulez-vous rejouer?");
printf("\n1.Oui");
printf("\n2.Non\n");
scanf("%d",&rejouer);
}while(rejouer==1);
return 0;
}