实现一个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;
}