C语言五子棋程序设计 谢谢!!
答案:1 悬赏:10 手机版
解决时间 2021-10-15 09:59
- 提问者网友:雾里闻花香
- 2021-10-14 17:31
C语言五子棋程序设计 谢谢!!
最佳答案
- 五星知识达人网友:青灯有味
- 2021-10-14 18:47
// 程序“五子棋第三方版.exe”运行时,把以前下棋的棋谱保存在“棋谱.txt”文件中,// 然后调用本程序。// 本程序的作用是:首先读入以前的棋谱,然后调用函数“qxwz()”计算出计算机应该// 下棋的位置,并保存在c中,然后把应下棋的位置写入文件“当前棋子.txt”#include <stdio.h>typedef struct{ char x; char y;} QZ;QZ qzwz(); //取得应下棋位置,返回值为QZ类型,其中的x,y两个成员代表应下棋位置char qp[19][19]; //用于保存棋盘上每个点的状态,0--空,1--黑棋,2--白棋void main(){ FILE *fp; int tmp1,tmp2,tmp3; QZ c; if((fp=fopen("棋谱.txt","r"))==NULL) { printf("[棋谱.TXT]文件打开失败!\n"); return; } while(!feof(fp)) { tmp1=tmp2=tmp3=-1; fscanf(fp,"%d%d%d",&tmp1,&tmp2,&tmp3); if(tmp3!=-1) { qp[tmp1][tmp2]=tmp3; } } fclose(fp); c=qzwz(); if((fp=fopen("当前棋子.txt","w"))==NULL) { printf("[当前棋子.TXT]文件打开失败!\n"); return; } fprintf(fp,"%d,%d,%d",c.x,c.y,2); //将应下棋位置传送到文件中 fclose(fp);}QZ qzwz(){ (把这里面的程序补充完整就好了)} 这个程序要求是:1。只适用于人先下,机器后下的情况。有了“五子棋第三方版.exe”来制作下棋界面,就只需要编写下棋算法,而不必考虑其它的问题了。2.当运行“五子棋第三方版.exe”程序时,该程序接受人下棋位置,然后调用“wzq.exe”程序,由“wzq.exe”程序计算出机器的应对并写入到“当前棋子.txt”文件中(结束),机器的应对结果由“五子棋第三方版.exe”负责读入,并等待人下一步的应对。3.要做的工作就是,完成“wzq.cpp” 中“qxwz()”函数的设计,使之能返回一个比较好的下棋位置。在设计过程中,可以增加全局变量以保存你认为有必要保存的数据,可以增加其它文件,用来保存你认为下次调用还有必要使用的数据,可以增加其它函数以方便下棋位置的计算过程。总之,所给出的“wzq.cpp”程序只是一个框架,在不影响其功能的情况下,可以随意更改。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯