1.12、C语言设计简易扫雷

实现一个10*10 的扫雷游戏,有10颗随机累,输入坐标确定点击

/*****************************************************************
*   Copyright (C) 2018 Sangfor Ltd. All rights reserved.
*   
*   文件名称:saolei.c
*   创 建 者:yinfei-hu
*   创建日期:2018年08月07日  星期2 14时21分02秒
*   功能描述:10*10扫雷
*
*****************************************************************/
#include <stdio.h>
#include <stdlib.h>  //需要库
#include <time.h>
#define N 10
#define M 10
int main()
{
    int aa[10],b,c,d = 0,e = 0;
    char a[N][M];
    srand(time(NULL)); //产生随机数种子
    for(int i = 0;i < 10;i++)
        aa[i]=rand()%(100-1+1)+1;//1-100之间的随机数
    for(int i = 0;i < 10;i++)
        printf("%2d\t",aa[i]);
    printf("\n");
    for(int i = 0;i < N;i++)
        for(int j = 0;j < M;j++)
            a[i][j] = '0';
    for(int i = 0;i < N;i++){
            for(int j = 0;j < M;j++)
                printf("%2c",a[i][j]);
            printf("\n");
    }
    while(e < 100){
        d = 0;
        printf("请输入坐标(1-10)i,j:\n");
        scanf("%d%d",&b,&c);
        if(b > 10 || c > 10){
            printf("请重新输入坐标(1-10)i,j:\n");
            scanf("%d%d",&b,&c);    
        }
        for(int i = 0;i < 10;i++)
            if( ( 10*(b-1)+c-1) == aa[i]){
                d = 1;
                break;
            }
            else a[b-1][c-1] = '1';
        if(d == 1){
            a[b-2][c-1] = ' ';
            a[b-1][c] = ' ';
            a[b-1][c-1] = '*';
            a[b-1][c-2] = ' ';
            a[b][c-1] = ' ';
            for(int i = 0;i < N;i++){
                for(int j = 0;j < M;j++)
                    printf("%2c",a[i][j]);
                printf("\n");
            }
            printf("Game over!!!\n");
            break;
        }
            
        for(int i = 0;i < N;i++){
            for(int j = 0;j < M;j++)
                printf("%2c",a[i][j]);
            printf("\n");
        }
        e++;
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_41110647/article/details/106315555