zoukankan      html  css  js  c++  java
  • c语言 扫雷游戏(才做了三分之一)

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    #include<random>
    #define ROW 10
    #define COL 10
    #define NUM 10
    int map[ROW+2][COL+2];

    //游戏初始化
    void GameInit() {
    srand((unsigned int)time(NULL));
    //什么是雷?-1 有几个雷?10 雷在哪里?随机放在二维数组
    for (int i = 0; i < 10; i++) {//循环了NUM次
    int r = rand() % ROW+1;
    int c = rand() % COL+1;
    if (map[r][c] != -1) {
    map[r][c] = -1;
    }
    i++; //每产生一个雷 循环次数+1 10次才可以结束

    }
    //根据雷的分布 在游戏区去填充数组的[非雷元素]
    //只是有九宫格的
    for (int i = 0; i < ROW; i++) {
    for (int j = 0; j < COL; j++) {
    if (map[i][j] != -1)//所有不为雷的元素
    {
    //假设找到一个元素,元素的下标是 i,j;
    //遍历九宫格
    for (int m = i - 1; m <=i + 1; m++) {
    for (int n = j - 1; n <= j + 1; n++) {
    if (map[m][n] == -1) { //找到一个雷
    map[i][j]++; //这个元素++
    }
    }
    }
    }
    }
    }
    }
    void print() {
    //只打印游戏区
    for (int i = 1; i < ROW; i++) {
    for (int j =1; j < COL; j++) {
    if (map[i][j] == -1) {
    printf("#");
    }
    else if (map[i][j] >= 0 && map[i][j] <= 8) {
    if (map[i][j] == 0) {
    printf(" ");
    }
    else
    printf("&d ", map[i][j]);
    }
    printf("%2d ", map[i][j]);
    }
    }
    }
    int main() {
    print();
    GameInit();

    return 0;
    }

  • 相关阅读:
    springIOC 原理
    jeesite异步分页
    yum
    乐观锁原理
    equlas(),hashcode(),hashset,hashmap
    链接收藏
    java单词
    jeesite优化
    SailingEase .NET Resources Tool (.NET 多语言资源编辑器)转
    C#基本语法
  • 原文地址:https://www.cnblogs.com/Ssinoo/p/10922040.html
Copyright © 2011-2022 走看看