QUOTE(omega18 @ 28 Nov, 2008 - 01:31 PM)

So, how do I make the AI plan the whole game?
Hope it won't need an array per game chance...
If you map out the strategy detailed here:
http://www.chessandpoker.com/tic_tac_toe_strategy.htmlI think it would be challenging but not beyond you given the skills and abilities you have described so far.
The rules to follow are not trivial but neither are they hugely onerous.
PS
I wasn't able to compile the code you supplied so I'm not sure how far you are away from your goal at this point.
$ gcc -Wall dic.c -o a.out
dic.c:7: error: syntax error before ‘;’ token
dic.c: In function ‘Scan_player’:
dic.c:12: error: ‘player’ undeclared (first use in this function)
dic.c:12: error: (Each undeclared identifier is reported only once
dic.c:12: error: for each function it appears in.)
dic.c:20: warning: implicit declaration of function ‘_flushall’
dic.c:25: warning: implicit declaration of function ‘strlen’
dic.c:25: warning: incompatible implicit declaration of built-in function ‘strlen’
dic.c: In function ‘Score_clear’:
dic.c:44: error: ‘score’ undeclared (first use in this function)
dic.c:45: error: ‘scorepc’ undeclared (first use in this function)
dic.c:46: error: ‘score0’ undeclared (first use in this function)
dic.c:47: error: ‘score1’ undeclared (first use in this function)
dic.c:48: error: ‘score2’ undeclared (first use in this function)
dic.c:49: error: ‘losepc’ undeclared (first use in this function)
dic.c:50: error: ‘lose1’ undeclared (first use in this function)
dic.c:51: error: ‘lose2’ undeclared (first use in this function)
dic.c: In function ‘Show_name’:
dic.c:55: warning: incompatible implicit declaration of built-in function ‘strlen’
dic.c: In function ‘Show_score’:
dic.c:61: error: ‘score’ undeclared (first use in this function)
dic.c:64: error: ‘score1’ undeclared (first use in this function)
dic.c:67: error: ‘lose1’ undeclared (first use in this function)
dic.c:70: error: ‘score2’ undeclared (first use in this function)
dic.c:73: error: ‘lose2’ undeclared (first use in this function)
dic.c:74: error: ‘scorepc’ undeclared (first use in this function)
dic.c:75: error: ‘losepc’ undeclared (first use in this function)
dic.c:76: error: ‘score0’ undeclared (first use in this function)
dic.c: In function ‘win_check’:
dic.c:80: error: ‘check’ undeclared (first use in this function)
dic.c:85: error: ‘tris’ undeclared (first use in this function)
dic.c: In function ‘play’:
dic.c:192: error: ‘check’ undeclared (first use in this function)
dic.c:192: error: ‘curr’ undeclared (first use in this function)
dic.c:194: error: ‘player’ undeclared (first use in this function)
dic.c:208: error: ‘tris’ undeclared (first use in this function)
dic.c: In function ‘pc_play’:
dic.c:236: error: ‘check’ undeclared (first use in this function)
dic.c:236: error: ‘curr’ undeclared (first use in this function)
dic.c:239: warning: implicit declaration of function ‘srand’
dic.c:240: warning: implicit declaration of function ‘rand’
dic.c:242: error: ‘tris’ undeclared (first use in this function)
dic.c:243: error: ‘player’ undeclared (first use in this function)
dic.c: In function ‘show’:
dic.c:271: error: ‘tris’ undeclared (first use in this function)
dic.c: In function ‘clear’:
dic.c:287: error: ‘curr’ undeclared (first use in this function)
dic.c:292: error: ‘tris’ undeclared (first use in this function)
dic.c: In function ‘main’:
dic.c:308: error: ‘player’ undeclared (first use in this function)
dic.c:330: error: ‘curr’ undeclared (first use in this function)
dic.c:349: error: ‘score1’ undeclared (first use in this function)
dic.c:350: error: ‘losepc’ undeclared (first use in this function)
dic.c:353: error: ‘scorepc’ undeclared (first use in this function)
dic.c:354: error: ‘lose1’ undeclared (first use in this function)
dic.c:356: error: ‘score’ undeclared (first use in this function)
dic.c:360: error: ‘score0’ undeclared (first use in this function)
dic.c:385: error: ‘lose2’ undeclared (first use in this function)
dic.c:390: error: ‘score2’ undeclared (first use in this function)
$