Hello
J'ai 2 erreurs lors de la compilation de mon fichier.c :
conflicting type for 'mafonction'
previous implicite declaration of 'mafonction'
J'ai aussi 1 warning qui se répète :
data definition has no type or storage class
A quoi dois je faire attention pour repérer l'erreur ?
J'ai essayé de joindre le fichier en pièce jointe, mais il y a une erreur car le fichier n'est pas valide... ?? Je vous le colle :
#include<stdio.h>
char grille[6][7], a, choix;
int w;// si w=o -> pas de gagnant et la partie continue ; si w=-1 -> il y a un gagnant et la partie s'arrête
int y;// si y=o -> la grille n'est pas pleine et la partie continue; si y=1 -> la grille est pleine partie s'arrête
int u; // nombre de partie gagné pas joueur 1
int d; // nombre de partie gagné pas joueur 2
int p;//nombre de partie jouée
int x; //colonne sélectionée
y=0;u=0;d=0;p=0;w=0;
void initialiser()// on met du blanc dans la grille
{
int i,j;
for(i=0 ; i<6 ; i++)
{
for(j=0 ; j<7 ; j++)
{
grille[i][j]=' ';
}
}
}
void afficher()// on affiche la grille avec une mise en page et tous les commentaires
{
int i,j;
int b;
for(i=0 ; i<6 ; i++)
{
printf("----------------------\n");
for(j=0 ; j<7 ; j++)
{
printf("| ");
printf("%c",grille[i][j]);
}
printf("| %i",i+1);
printf("\n");
}
printf("----------------------\n");
printf(" 1 2 3 4 5 6 7\n");
printf("\nJoueur 1 : X\nJoueur 2 : O\n\n");
if(y!=0 && w!=-1)// on verifie que la grille est pleine et qu'il n'y a pas de gagnant
{
printf("\nLa grille est pleine, match nul\n\n");
}
if(w==-1)// on vérifie si un joueur a gagné
{
if(a=='X')
{
b=1;
u++;
}
else
{
b=2;
d++;
}
printf("\n BRAVO !!!\n\n-------------------------\n| Le joueur %i a gagné ! |\n-------------------------\n\n",b);
y=1;
}
}
void placer(int x)// on place le jeton d'un joueur
{
int i,j;
i=x+1;
printf("\nVous avez choisi la colonne numéro %i.\n",i);
while(x<0 || x>6)
{
printf("\n\nChoisissez une colonne qui existe !");
scanf("%i",&x);x--;
i=x+1;
if(x>0 || x<6)
{
printf("\nVous avez choisi la colonne numéro %i.\n",i);
}
}
while(grille[0][x] == 'X' || grille[0][x] == 'O')
{
printf("\n\nCette colonne est pleine, choisissez une autre colonne !");
scanf("%i",&x);x--;
i=x+1;
if(x>0 || x<6)
{
printf("\nVous avez choisi la colonne numéro %i.\n",i);
}
}
i=5;
while(grille[i][x] != ' ')
{
i--;
}
grille[i][x]=a;
gagnant(i,x);// on vérifie si quelque'un a gagné
verifpleine();// on vérifie si la grille est vide
}
int verifpleine()// on vérifie si la grille est vide
{
int i,j;
j=0;
for(i=0 ; i<7 ; i++)
{
if(grille[0][i]=='O' || grille[0][i]=='X')
{
j++;
}
}
if(j==7 || x==-1)
{
y=1;
return(0);
}
}
void gagnant(int l, int c)// on vérifie si quelque'un a gagné
{
int k;
int n;
int j;
char b;
n=0;
for(k=l+1 ; k<6 ; k++) //vérification sur la verticale bas
{
if(grille[k][c]==a)
{
n++;
}
else
{
break;
}
}
if(n==3) //on voit si le joueur a gagné sur la verticale
{
w=-1;
}
n=0;
for(k=c-1 ; k>-1 ; k--) //vérification sur l'horizontale gauche
{
if(grille[l][k]==a)
{
n++;
}
else
{
break;
}
}
for(k=c+1 ; k<7 ; k++) //vérification sur l'horizontale droite
{
if(grille[l][k]==a)
{
n++;
}
else
{
break;
}
}
if(n==3) //on voit si le joueur a gagné sur l'horizontale
{
w=-1;
}
n=0;j=l;
for(k=c+1 ; k<7 ; k++) //vérification sur la diagonale haut droite
{
j--;
if(grille[j][k]==a)
{
n++;
}
else
{
break;
}
}
j=l;
for(k=c-1 ; k>-1 ; k--) //vérification sur la diagonale bas gauche
{
j++;
if(grille[j][k]==a)
{
n++;
}
else
{
break;
}
}
if(n==3) //on voit si le joueur a gagné
{
w=-1;
}
n=0;j=l;
for(k=c-1 ; k>-1 ; k--) //vérification sur la diagonale haut gauche
{
j--;
if(grille[j][k]==a)
{
n++;
}
else
{
break;
}
}
j=l;
for(k=c+1 ; k<7 ; k++) //vérification sur la diagonale bas droit
{
j++;
if(grille[j][k]==a)
{
n++;
}
else
{
break;
}
}
if(n==3) //on voit si le joueur a gagné
{
w=-1;
}
}
int menu()
{
if(p!=0)
{
printf("\n-----------------------------------");
printf("\nStatistiques :\n");
printf("\nNombre de partie jouée : %i\n",p);
printf("\nLe joueur 1 a gagné %i partie(s).\n",u);
printf("\nLe joueur 2 a gagné %i partie(s).\n",d);
printf("-----------------------------------\n\n");
}
p++;
while(choix!='O' && choix!='N')
{
printf("\nVoulez vous faire une partie ? O/N ");scanf("%c",&choix);
if(choix!='O' && choix!='N')
{
printf("\nRépondez par O ou N.");scanf("%c",&choix);
}
}
if(choix=='N')
{
return(0);
}
else
{
initialiser();
afficher();
printf("\n\nChaque joueur donnera le numéro de la colonne dans lequel il choisira d'insérer son jeton.\n\n");
while(y==0)
{
a='X';
printf("\n\nJoueur 1, quelle colonne choisissez vous ? ");
scanf("%i",&x);x--;
placer(x);
afficher();
if(y!=0)
{
break;
}
a='O';
printf("\n\nJoueur 2, quelle colonne choisissez vous ? ");
scanf("%i",&x);x--;
placer(x);
afficher();
}
}
return(1);
}
int main()
{
y=0;
printf("\n\n JEUX PUISSANCE 4\n\n");
while(menu()==1)
{
y=0;w=0;
choix='R';
}
printf("\n\nJ'espère que vous vous êtes bien amusé.\n\n AU REVOIR \n\n");
return(0);
}
-----