C语言游戏设计——扫雷

C语言的第二个游戏,(历时3小时)很有成就感。

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<windows.h>
void menu();
void Clean(char Board[][10], int cow, int col);
void Show(char Board[][10], int cow, int col);
void CreatLei(char Board[][10], int cow, int col);
void User(char Board[][10], int cow, int col);
void Start(char Board[][10]);
void Help();
//菜单
void menu(){printf("***************************************************************\n");printf("********************         扫雷         *********************\n");printf("********************        1开始1        *********************\n");printf("********************        2帮助2        *********************\n");printf("********************        0退出0        *********************\n");printf("***************************************************************\n");
}
//初始化
void Clean(char Board[][10],int cow,int col){for (int i = 0; i < cow;++i){for (int j = 0; j < col;++j){Board[i][j] = ' ';}}
}
//生成10个地雷
void CreatLei(char Board[][10], int cow, int col){int x=0, y=0;for (int i = 1; i < 11;++i){x = rand() % 10;y = rand() % 10;Board[x][y] = '*';}
}
//显示背景
void Show(char Board[][10], int cow, int col){for (int i = 0; i <= cow;++i){for (int j = 0; j <= col;++j){if (j<col){printf("——");}}printf("\n");if (i<cow){for (int j = 0; j <= col; ++j){printf("|");if (j < col){if (Board[i][j]=='*'){printf("   ");}else {printf(" %c ",Board[i][j]);}}}}printf("\n");}
}
//玩家操作
void User(char Board[][10], int cow, int col){int x, y,flag,n=0;char arr[10][10] = {' '};for (int i = 0; i < cow;++i){for (int j = 0; j < col;++j){if (Board[i][j]=='*'){arr[i][j] = '*';}}}while (1){char num = '0';Show(Board, 10, 10);printf("*************请玩家选定排雷坐标1-10*************\n");scanf("%d%d", &x, &y);printf("******是否标记该坐标点?是输1,不是输0******\n");scanf("%d",&flag);if (flag==0){if (arr[x - 1][y - 1] == '*'){printf("***************你踩到地雷了!*****************\n");break;}else{for (int i = x - 2; i <= x; ++i){for (int j = y - 2; j <= y; ++j){if (arr[i][j] == '*'){num++;}}}Board[x - 1][y - 1] = num;}}else{Board[x - 1][y - 1] = '?';if (arr[x-1][y-1]=='*'){n++;}}if (n==10){printf("*************恭喜你,你已经排除所有地雷!************\n");break;}}
}
//游戏开始
void Start(char Board[][10]){printf("******************游戏开始**********************");Clean(Board, 10, 10);CreatLei(Board, 10,10);User(Board,10,10);
}
//游戏帮助
void Help(){printf("********************************************************************************\n");printf("*先输入坐标位置,然后要标记,则输入1,否则输入0,标记后的位置为一个‘?’标识的*\n");printf("*图形,你的目标是排除所有雷,当你不选择标记时,会提示你以当前坐标为中心,周围八*\n");printf("********************位置中有几个地雷,前提是,你不能踩上!***********************\n");printf("********************************************************************************\n");
}
int main(){int input = 0;char Board[10][10];srand(time(NULL));menu();printf("你玩吗?玩输入1,查看帮助输入2,退出输入0:");scanf("%d", &input);do{menu();switch (input){case 1:   Start(Board); break;case 2: Help(); break;case 0:printf("******************退出到主菜单******************\n"); break;default:printf("*******************格式错误********************\n"); break;}printf("你还玩吗?玩输入1,查看帮助输入2,退出输入0:");scanf("%d", &input);} while (input);system("pause");return 0;
}

C语言游戏设计——扫雷相关推荐

  1. c语言可以设计那些游戏,语言游戏设计(c语言怎样设计游戏)

    如何给10个月的宝宝设计训练语言能力游戏 亲说的训练宝宝的语言能力,是想让宝宝比别的小朋友更厉害一点呢还是想开发宝宝的智力呢?如果是前者,那么需要有育婴专家来做哦,如果是后者,那么亲可以这样做:十个月 ...

  2. JAVA语言课程设计——扫雷小游戏

    1.设计内容 设计一个界面为10*10的扫雷程序,雷的个数不少于10个.功能如Windows系统给定的扫雷游戏. 效果如图:扫雷界面 2.设计要求 界面美观,鼠标的左右键好用.左键:直接显示有几个雷, ...

  3. 扫雷java讲解_java课程设计(扫雷游戏)讲解.doc

    java课程设计(扫雷游戏)讲解.doc 成 绩 评 定 表 学生姓名班级学号 专 业课程设计题目基于Java的扫雷游戏软件设计评 语 组长签字: 成绩 日期 2014 年 月 日 课程设计任务书 学 ...

  4. C语言实现简易扫雷游戏

    本文所讲述的主要是如何用C语言的数组知识,实现简易的扫雷游戏. 若只需工程代码不需详情解释,可直接跳到末尾,在末尾会把代码全部展示出来. 首先要明白扫雷(初级)的游戏机制:         1.在9* ...

  5. Java语言实现的扫雷游戏(一)

    Java类库中提供了用于GUI的swing开发工具包,我们可以利用swing设计出一些简单的经典小游戏,如扫雷,推箱子,俄罗斯方块等.接下来我就简单分享一下用Java设计扫雷游戏的思路与过程. 首先, ...

  6. 独立钻石棋游戏设计制作(C语言)

    独立钻石棋游戏设计制作(C语言) 我是编程爱好者.早期使用windows时就被扫雷游戏,钻石棋游戏,红心大战游戏迷住.相信大家也都玩过吧.在学习VB6编程时就编制过钻石棋和红心大战那样的纸牌游戏.都是 ...

  7. 纸牌游戏设计制作(C语言)

    纸牌游戏设计制作 (C语言) 我是编程爱好者.早期使用windows时就被扫雷游戏,钻石棋游戏,红心大战游戏迷住.相信大家也都玩过吧.在学习VB6编程时就编制过钻石棋和红心大战那样的纸牌游戏.都是标准 ...

  8. 做游戏,学编程(C语言)教材《C语言课程设计与游戏开发实践教程》出版了...

    经过半年多的写作.修改.校样.印制,我们的实践教材<C语言课程设计与游戏开发实践教程>终于出版了.这本书可以看成是"做游戏,学编程(C语言)专栏"的详细版本,以下为书中 ...

  9. 基于java的扫雷论文_毕业论文基于JAVA的扫雷游戏设计

    毕业论文基于JAVA的扫雷游戏设计 课 程 设 计 报 告 课程名称: 计算机技术综合课程设计 题 目: 基于JAVA语言的扫雷游戏设计 学 院: 信息工程 系: 计算机 专 业: 计算机科学与技术 ...

  10. 扫雷程序设计Android答辩,基于QT的扫雷游戏设计与实现扫雷游戏答辩.ppt

    基于QT的扫雷游戏设计与实现扫雷游戏答辩.ppt 程序设计 基于QT语言的扫雷游戏,答辩学生,一.分析扫雷游戏的基本功能,1.从外观上分析 方块 笑脸 计时器 有雷标识 无雷标识 胜利画面 失败画面, ...

最新文章

  1. PowerShell-6.文件操作
  2. DCMTK:测试CT像框FG类
  3. SVN提交时强制用户写日志
  4. java安全编码指南之:序列化Serialization
  5. python中用函数货币转换代码_python将人民币转换大写的脚本代码
  6. AcWing 1209. 带分数(排列型枚举)
  7. php单例模式详解,PHP 单例模式解析和实战
  8. js实现发送验证码倒计时按钮
  9. Delphi7调用dll(图文教程)2021最新
  10. Ext.grid.EditorGridPanel列表复选框不能随意多选的问题
  11. WordPress外贸建站多语言翻译插件推荐
  12. rust启动错误ple_Rust 错误处理
  13. flutter APP自动更新
  14. 微博爬虫及简单数据分析
  15. 数据分析师,岗位真相最全解析!
  16. 差分隐私 深度学习_深度学习中的差异隐私
  17. cdn.bootcss.com网站提供的第三方jQuery库遭到篡改
  18. 水墨古风动态PPT模板
  19. Win7 Home变旗舰
  20. python调用海康相机进行Apriltag检测

热门文章

  1. Python爬取周杰伦的200首歌+BI可视化分析
  2. 计算机之父童年的故事ppt,24计算机之父童年的故事
  3. 上云避坑指南100篇|ERP上云一时爽,遇坑泪两行
  4. java short 转char_byte,short,char的类型转换
  5. 什么是顶级域名和一级域名,如何区分
  6. 企业宣传片解说词的写法指导。
  7. VS2013好用的插件
  8. 亚洲杯:国足告别阿联酋
  9. mysql字符集和校对规则(character sets and collations)详解
  10. Python实现视频流媒体传输