早教吧作业答案频道 -->其他-->
关于C语言的学生作业问题1.编程序模拟“地雷游戏”。在9×9的方格中,随机布上10个“地雷”,按9行9列输出各格子的数(有雷为9,无雷为0)。在有相邻地雷的格子内进一步标出相邻地雷数(
题目详情
关于C语言的学生作业问题
1.编程序模拟“地雷游戏”。在9×9的方格中,随机布上10个“地雷”,按9行9列输出各格子的数(有雷为9,无雷为0)。在有相邻地雷的格子内进一步标出相邻地雷数(最多8个)。
2. 在已做“地雷游戏”的程序基础上(第1题),按如下要求改写程序:
① “雷区”方阵的大小在程序运行过程中通过键盘输入;
② 地雷的个数在程序运行中指定; ③ 地雷的个数必须与指定个数相同
1.编程序模拟“地雷游戏”。在9×9的方格中,随机布上10个“地雷”,按9行9列输出各格子的数(有雷为9,无雷为0)。在有相邻地雷的格子内进一步标出相邻地雷数(最多8个)。
2. 在已做“地雷游戏”的程序基础上(第1题),按如下要求改写程序:
① “雷区”方阵的大小在程序运行过程中通过键盘输入;
② 地雷的个数在程序运行中指定; ③ 地雷的个数必须与指定个数相同
▼优质解答
答案和解析
第一题:
//测试可用,已修改完整,望采纳
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#define N 10 //地雷的个数
void fun1(int (*a)[9])
{
/*随机生成地雷*/
int i,j;
srand((int)time(0));
int counter=0;
while(counter<N)
{
i=rand()%9;
j=rand()%9;
if(*(*(a+i)+j)==9)continue;
else
{
*(*(a+i)+j)=9;
counter++;
}
}
}
void fun2(int (*a)[9])
{
/*输出雷阵*/
int i,j;
for(i=0; i<9; i++)
{
for(j=0; j<9; j++)
printf("%d ",*(*(a+i)+j));
printf("\n");
}
printf("\n");
}
int Sum(int (*a)[9],int i,int j)
{
/*判断编号为i,j的格子周围有多少个地雷*/
int di,dj,counter=0;
for(di=-1; di<=1; di++)
for(dj=-1; dj<=1; dj++)
{
if(i+di<0||i+di>8||j+dj<0||j+dj>8)continue;
/*超出范围*/
else if(*(*(a+i+di)+j+dj)==9)counter++;
}
return counter;
}
void fun3(int (*a)[9])
{
/*扫雷*/
int i,j;
for(i=0; i<9; i++)
for(j=0; j<9; j++)
{
if(*(*(a+i)+j)==9)continue;
/*如果其本身就是地雷*/
else *(*(a+i)+j)=Sum(a,i,j);
}
}
int main()
{
int a[9][9];
int i,j;
for(i=0; i<9; i++)
for(j=0; j<9; j++)
*(*(a+i)+j)=0;
fun1(a);//产生雷阵
fun2(a);//输出雷阵
fun3(a);//扫雷
fun2(a);//输出雷阵
return 0;
}
看了 关于C语言的学生作业问题1....的网友还看了以下:
某机关有一只保险柜柜门上密码锁有5个圈每个圈上都有10个字母只有每个圈取一个字母,恰好排成某字,然 2020-04-06 …
已知四种强电解质溶液,分别含有下列阴、阳离子中的各一种,并且互不重复:NH4+、Ba2+、Na+、 2020-04-11 …
句子结构分析thegreatestandmostterribleofwarsend句子结构分析th 2020-05-13 …
whatisneededisacts中的isneeded是主语补足语吗这个句子中的各个单词各担任什 2020-05-17 …
怎样分清英语句子中的各个成分?定语 宾语 表语什么语之类的...怎样一个个划分 2020-05-17 …
分子中各原子个数比是指什么?怎么算一个分子中的各原子个数之比?还有物质的量之比?还有种就是某物质中 2020-05-24 …
英语中的基本单词.因为初高中基本混日子.人的各个器官怎么说?比如耳朵,鼻子之类的.还有星期一到星期 2020-06-10 …
你能想到杏花和园子内的各种植物有过怎样的对话. 2020-06-13 …
一个集合含有10个互不相同的两位数.试证,这个集合必有2个无公共元素的子集合,此两子集的各数之和相 2020-06-22 …
化学关于对映异构中简单对称轴的问题《有机化学》:“简单对称轴(Cn):当一条直线穿过一个分子并使这 2020-06-23 …