Hallo Tokitari,
auch wenn du deinen Code mit einer Menge Kommentare versehen hast, ist es schwierig, die verhaltensweise deiner KI zu verstehen. Das ist denke ich auch das Problem, denn wären die Reaktionen deiner KI auf bestimmte Eingaben übersichtlicher, dann gäb es keine Schwierigkeiten. Soweit ich das verstehe, wird in der Methode COMPUTER[...] auch die Eingabe eines SPIELERS abgefragt. Das ist schonmal schlecht - der Methodenname passt entweder nicht oder dieser Teil müsste in eine andere Methode ausgelagert werden. Letzteres würde ich dir auch empfehlen:
Du hast drei Methoden: Computer, Spieler, Überprüfen. Alle bekommen einen Zeiger auf das Feld übergeben (char** Feld) und returnen keinen Wert (void). Computer berechnet nun den Zug des Computers und trägt diesen gleich in das Feld ein. Spieler fragt die Eingabe des Spielers ab und trägt auch seinen Zug ein. Überprüfen ist für für die Gewinnerkennung zuständig. Nun werden in deiner Main reihum die Methoden aufgerufen und dazwischen immer das Feld gezeichnet.
Außerdem würde ich auf Static-Member verzichten, soetwas schafft nur Verwirrung. Schreib dir lieber eine Methode, die dir den aktuellen Zug oder soetwas returnt. Das kann sie entweder mit dem Spielfeld als Übergabeparameter tun oder einfach eine globale Variable auslesen.