ああ、オセロ6行はgccで通らないはず。確か
(p=8;++p<82;printf("・\0○\0●\0\n"+m[p]))p%9?k():m[p]=9;for(a?d=a=p=9:s?s=0,
の行のk()が原因。確認はしていないけれど、
(p=8;++p<82;printf("・\0○\0●\0\n"+m[p]))p%9?k(),0:m[p]=9;for(a?d=a=p=9:s?s=0,
にすればうまくいくのではないかな?