Co tutaj jest poknocone, że nie działa? prawdopodobnie zwaliłem coś w tej funkcji odczytu
#include <stdio.h>
#include <stdlib.h>
char tablica[3][3];
char check(void);
void init_tablica(void);
void ruch_gracza(void);
void ruch_komp(void);
void disp_tablica(void);
int main(void);
void wybor =-1;
{
char done;
printf("Witam w grze kołko i krzyzyk. Zapraszam do wspolnej zabawy\n");
done = ' ';
init_tablica();
if (wybor == 1) {
FILE*plik=fopen("kolkoikrzyzyk.txt","r");
for(int i=0; i < 3; ++i)for(int j=0; j < 3; ++j)
tablica[i][j] = fgetc(plik);
fclose(plik);
} else {
puts("Kto zaczyna gre, władco:\n1 - KOMPUTER\n2 - UZYTKOWNIK");
int x;
scanf("%d", &x);
switch(x)
{
case 1:
disp_tablica();
ruch_komp();
break;
}
do {
disp_tablica();
ruch_gracza();
done = check();
if(done!= ' ') break;
ruch_komp();
done = check();
} while(check() == ' ');;
if(done=='X') printf("Wygrales!\n");
else printf(" Wygralem\n");
disp_tablica();
return 0;
}}
void init_tablica(void)
{
int i, j;
for(i=0; i<3; i++)
for(j=0; j<3; j++) tablica[i][j] = ' ';
}
void ruch_gracza(void)
{
int x, y;
printf("Wpisz wspolrzedne ruchu: ");
scanf("%d%*c%d", &x, &y);
x--; y--;
if(tablica[x][y]!= ' '){
printf("Zle dane, sprobuj jeszcze raz.\n");
ruch_gracza();
}
else tablica[x][y] = 'X';
}
void ruch_komp(void)
{
int i, j;
for(i=0; i<3; i++){
for(j=0; j<3; j++)
if(tablica[i][j]==' ') break;
if(tablica[i][j]==' ') break;
}
if(i*j==9) {
printf("remis\n");
exit(0);
}
else
tablica[i][j] = 'O';
}
void disp_tablica(void)
{
int t;
for(t=0; t<3; t++) {
printf(" %c | %c | %c ",tablica[t][0],
tablica[t][1], tablica [t][2]);
if(t!=2) printf("\n---|---|---\n");
}
printf("\n");
}
char check(void)
{
int i;
for(i=0; i<3; i++)
if(tablica[i][0]==tablica[i][1] &&
tablica[i][0]==tablica[i][2]) return tablica[i][0];
for(i=0; i<3; i++)
if(tablica[0][i]==tablica[1][i] &&
tablica[0][i]==tablica[2][i]) return tablica[0][i];
if(tablica[0][0]==tablica[1][1] &&
tablica[1][1]==tablica[2][2])
return tablica[0][0];
if(tablica[0][2]==tablica[1][1] &&
tablica[1][1]==tablica[2][0])
return tablica[0][2];
return ' ';
}