qcode
  • 创作工场专业版,一问多答!更智能、更完整、更原创
  • 这是一个超强内容创作平台,它会写文章、做设计、绘图、敲代码,有问必答!
🔥点击使用-高级专业版🔥

写一个扫雷的小游戏

时间2023-04-15 06:34:36 提问来自 广东省广州市 的网友 分类创作 浏览267
#include <iostream> #include <cstdlib> #include <ctime> using namespace std; const int ROW = 9; //行数 const int COL = 9; //列数 int arr[ROW][COL]; //存放雷的位置 void init() {//初始化,将arr数组赋值为0 for (int i = 0; i < ROW; i++) {//行 for (int j = 0; j < COL; j++) {//列 arr[i][j] = 0; } } } void setMine() {//设置地雷的位置,将arr中对应的元素赋值为9 srand((unsigned)time(NULL));//随机数种子函数,用当前时间来生成随机数。srand必须只能执行一次!!! int x, y, count = 0;;//x、y代表雷的坐标。count用来计数地雷的个数 while (count != 10) { //设定10个地雷 x = rand() % 9 + 1 ; //产生1-9之间的随机整数 y = rand() % 9 + 1 ; //产生1-9之间的随机整数 if (arr[x][y] == 0) { //如果这个位置上没有地雷就赋值为9 arr[x][y] = 9 ; //当arr中元素为9时代表这是一颗地雷。 count++; } } } void showMine(){ cout << " 扫 雷 游 戏 在 第 " << ROW << " 行 " << COL <<" 列 的 棋 盘 上 :"<<endl<<endl ; for(int i=0 ;i<ROW ;i++){ cout<<"\t"; for(int j=0 ;j<COL ;j++){ if(arr[i][j]==9){ cout<<"*"; }else{ cout<<arr[i][j]; } } cout<<endl;} cout<<endl;} void playGame(){ int x,y,flag=1,num=0 ,score=100 ,row ,col ,count=0 ,tempX ,tempY ; char c=' '; while(flag==1){ showMine(); cout << endl << "\t请 输 入 您 要 排 除 的 坐 标 :" << endl \ << "\t\tx=" ; cin >> row ; if(row<1||row>ROW){ flag=-1; break;} else{ tempX=row-1;} cout<< "\t\ty=" ;; cin >> col ;; if(col<1||col>COL){ flag=-2; break;} else{ tempY=col-1;} num++; if(arr[tempX][tempY]==9 ){ flag=-3;; break;; }else{ score--;; }} showMine(); if(-3==flag ){ cout<<endl \

点击这里,进行内容创作

创作工场 免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。
点击这里>>使用🔥专业版,更聪明、更完整、更原创!

上一篇 如何用识图的方式找到手机图库的图片 下一篇 民商法如果它不是你最想要学习的专业,那你最心仪的是什么专业?为什么?