C语言实现扫雷游戏

//C语言实现扫雷游戏
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
    int arr[10][10]={0};//扫雷游戏中的100个格子
    int row,col;//循环变量
    int row1,col1;//九宫格的循环变量
    int count =0;//累计产生地雷的数量
    srand(time(0));//每次执行产生的结束都不一样 随机种子
    do
    {
        row=rand()%10;//从0-9  随机函数
        col=rand()%10;
        if(arr[row][col]==0)
        {
            arr[row][col]=-1;//标记为有地雷
            count++;
        }        
    }while(count<10);//产生10个随机地雷
    for(row=0;row<10;row++)//纵向遍历
    {
        for(col=0;col<10;col++)//横向遍历
        {
            if(arr[row][col]!=-1)//没有地雷的标记
            {
                count=0;
                for(row1=row-1;row1<=row+1;row1++)
                {
                    for(col1=col-1;col1<=col+1;col1++)
                    {
                        if(((row1>=0&&row1<10)&&(col1>=0&&col1<10))&&arr[row1][col1]==-1)
                            count++;
                    }
                }
                if(count==0)
                    printf("0 ");
                else
                    printf("%d ",arr[row][col]=count);                
            }
                
            else
                printf("* ");
        }
        printf("\n");
    }
    return 0;
}

 

posted @ 2017-09-04 20:24  gd_沐辰  阅读(589)  评论(0编辑  收藏  举报