标题:[求助]visual C++程式問題
只看楼主
maxusa73
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2005-12-28
 问题点数:0 回复次数:3 
[求助]visual C++程式問題

#include <conio.h>
#include <iostream.h>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define randomize() srand((unsigned) (time(NULL)))
#define random(x) (rand() %(x))
int Array[25],a,b; // 5x5 矩陣
void Check(int r, int c) // 檢查地雷
{


if (r>=0 && r<5 && c>=0 && c<5 && Array[5*r+c] != -1)
Array[5*r+c]++;
}

int main(int argc, char* argv[])
{

for(a=1;a<=25;a++){//印出1~25
printf("%3d",a);
if(a%5==0){
printf("\n");

}

}
for (int i=0; i<25; i++) // 初始化
Array[i] = 0;

srand((unsigned int)time(NULL));

for (i=0; i<3; i++) // 產生地雷
{
int s;
do
{
s = rand() * 25 / RAND_MAX;
} while (Array[s] == -1); // 重覆則繼續產生

Array[s] = -1; // 標示地雷

int r = s / 5;
int c = s % 5;

Check(r-1,c-1);
Check(r-1,c);
Check(r-1,c+1);
Check(r,c-1);
Check(r,c+1);
Check(r+1,c-1);
Check(r+1,c);
Check(r+1,c+1);
}
printf("請輸入1~25任一數字");
scanf("%d",&Array[25]);
for (int r=0; r<5; r++)//搜尋地雷
{

for (int c=0; c<5; c++)
{

int i = 5*r+c;

switch (Array[i])
{

printf("@ ");
break;

case -1:
printf("* ");
break;
default:
printf("%d ", Array[i]);
break;

}
}
printf("\n");
}

system("pause");

return 0;

}


以上是我用visualc++寫的
大致上都ok
但如果輸入數字後 就顯示全部 我想把他變成輸入數字後
就搜尋數字週圍八格的數字然後顯示週圍八個位址的資料 請問要如何寫呢?

[此贴子已经被作者于2005-12-31 13:16:09编辑过]

搜索更多相关主题的帖子: 程式 visual 
2005-12-31 11:36
ElfDN
Rank: 4
等 级:贵宾
威 望:11
帖 子:291
专家分:0
注 册:2005-11-13
得分:0 
你再做个数组把有值的地方都求出来,然后输入的时候先看是不是地雷,如果是那就全输出,如果不是就把另外一个数组的值输出

2005-12-31 14:07
C++大粉丝
Rank: 4
等 级:贵宾
威 望:10
帖 子:477
专家分:0
注 册:2004-4-23
得分:0 

楼住是台湾人吧......


I am a big fan of c plus plus.
2005-12-31 15:16
踏魔狼
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:1322
专家分:33
注 册:2005-9-22
得分:0 
我认为是HK人

=×&D o I p R e E n C g T l X&×=
2006-01-09 19:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-41075-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.187018 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved