C语言版井字棋.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
十五、井字棋?【问题描述】?设计一个井字棋得游戏程序 【基本要求】?游戏规则就是:从一个空得棋盘开始,人为x一方,计算机为o一方,人机双方轮流放置棋子,人下得时候,字符x将被放入棋盘中指定得位置,轮到计算机下时,程序将扫描棋盘,并将字符o放入扫描到得第一个空格,某一方有3枚棋子占据了一横行、一竖行或一对角线则获胜,若整个棋盘被占满还没有一方获胜则为与局、 截图: 代码: //author GXU-pengcheng #include〈stdio、h> #include〈windows。h> #include<conio、h> void Help();//帮助 int Play(char player,int choice);//对弈 void Init();//初始化棋盘 void Display();//打印棋盘 void Black(int choice);//黑棋 void White(int choice);//白棋 void Block(int choice);//添加选择框 void Clear(int choice);//清空之前得选择框 int Judge(int choice,char symbol);//判断输赢  返回值0为无结果,1为获胜,2为平局 int Funcx(int choice);//将标号转换为行号 int Funcy(int choice);//将标号转换为列号 void End(char symbol);//结束 int Found();//返回第一个没有棋子得位置得编号 char a[31][64];//用数组存放棋盘与棋子,a[行][列] int b=0;//棋子个数 int main(){ char player; ?int choice; system("title 井字棋");//设置标题 system("mode con cols=64 lines=35”);//设置窗口大小 system("color 70”);//设置颜色 while(1){ printf(”\n\n\n\n\n\n\t\t\t井\t字\t棋”); printf("\n\n\n\n\n\n\n\n\t\t\t1、 玩 家 先 手\n\n\t\t\t2。 电 脑 先 手\n\n\t\t\t3、 帮 助\n\n\t\t\t4、 退 出\n\n\n\n\n\t\t请输入:   "); player=getch(); ??if(player=='1'){ ? Init(); ? Block(5); ? choice=5; ?Play(player,choice); }else if(player==’2'){ ?Init(); ???Play(player,choice); ?}else if(player==’3'){ ??Help(); ? getch(); ? ?system("cls”); ??continue; ? }else if(player=='4'){ ? return 0; ??}else{ ?printf("\n\n\t\t  输入错误请重新输入!"); ??Sleep(1000); ? system("cls"); continue; ? } } ?return 0; } void Help(){ ?system("cls"); printf(”\n\n\n\n\n\n\n\n\n\t\t\t     帮助\n\n\n”); printf("\t  'W’上移, 'S'下移, 'A'左移, ’D'右移 \n\n"); ?printf("\t\t       游戏中按'4'退出"); printf(”\n\n\n\n\t\t   按任意键退出"); } int Play(char player,int choice){//对弈 ?char get; char symbol; int c=0;//Judge得出得结果 while(1){ ??system(”cls");//每次循环清屏一次 ?Display(); if(player=='1’){//玩家下棋 ??while(1){//确定要下得位置 ?? if((get=getch())!=’ '){ ?if(get=='4'){ ? ?? system("cls”); ? return 0; ? ?? }else if( (get=='w'||get=='W’) &&choice—3>=1){ ???? Clear(choice); ?? choice =choice-3

文档评论(0)

kch + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2023年10月08日上传了教师资格证

1亿VIP精品文档

相关文档