| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1956 人关注过本帖
标题:请教各位前辈一个程序的编写
只看楼主 加入收藏
神仙
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-14
收藏
得分:0 

最好是用规则式,便于更改游戏.
游戏实现不是很难,主要就是判断函数用什么方法做,这样会决定程序的好坏!~这个程序小,可以一一列举,就是穷举法,如果要是复杂的游戏呢,例如麻将等.还是找一本人工职能的书,熟悉下里面的A算法和A*算法等等的东西,对你编写人机对战的程序帮助嗷嗷大,要写人机对战的程序,难,我也是初学,看过点东西,在此瞎说,见笑!

2006-04-29 12:53
神仙
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2006-4-14
收藏
得分:0 
晕 发错了 不是这个帖子 怎么条到这里来了,不好意思.
汗!~~~~~
2006-04-29 12:54
java在线
Rank: 1
等 级:新手上路
帖 子:93
专家分:0
注 册:2005-7-9
收藏
得分:0 

晕,真的明白?建议看一下数据结构,分块写,要不然写好这样一个程序要晕的

2006-04-29 14:39
论坛
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:1372
专家分:0
注 册:2006-3-27
收藏
得分:0 

//完全按照楼主的意图写的

#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#define SIZE 3

int main(void)
{
int iarra[SIZE][SIZE] = {0};

void Process(int iarra[][SIZE]);

Process(iarra);

getch();
return 0;
}

void Process(int iarra[][SIZE])
{
int irow, icolumn, icount = 0;

int Compare(int iarra[][SIZE]);

while (1)
{
{ //你放棋子的位置
printf("Enter irow, icolumn:\n " );
scanf("%d %d", &irow, &icolumn);
iarra[irow][icolumn] = 1;
printf("Person: irow = %d, icolumn = %d\n", irow, icolumn);
icount++;
}

{ //机器放棋子的位置
int ic, id;

srand(time(NULL));

ic = rand() % 3;
id = rand() % 3;
while (iarra[ic][id] == 1 || iarra[ic][id] == 2)
{
ic = rand() % 3;
id = rand() % 3;
}
iarra[ic][id] = 2;
printf("Machine: ic = %d, id = %d\n\n", ic, id);
icount++;
}
{
int flag;

flag = Compare(iarra);
if ( flag == 1)
{
printf("you win.\n");
return ;
}
else if (flag == 0)
{
printf("machine win.\n");
return ;
}
else if (flag == -1)
{
if (icount == 9)
{
printf("both failure.\n");
return ;
}
}
}
}//while
}//Process

int Compare(int iarra[][SIZE])
{
int ie, ig;

for (ie = 0; ie < SIZE; ie++) //行看输赢
{
if (iarra[ie][0] == 1 && iarra[ie][1] == 1 && iarra[ie][2] == 1)
{
return 1;
}
if (iarra[ie][0] == 2 && iarra[ie][1] == 2 && iarra[ie][2] == 2)
{
return 0;
}
}
for (ig = 0; ig < SIZE; ig++) //列看输赢
{
if (iarra[0][ig] == 1 && iarra[1][ig] == 1 && iarra[2][ig] == 1)
{
return 1;
}
if (iarra[0][ig] == 2 && iarra[1][ig] == 2 && iarra[2][ig] == 2)
{
return 0;
}
}

if (iarra[0][0] == 1 && iarra[1][1] == 1 && iarra[2][2] == 1)
{
return 1;
}
if (iarra[0][0] == 2 && iarra[1][1] == 2 && iarra[2][2] == 2)
{
return 0;
}

if (iarra[0][2] == 1 && iarra[1][1] == 1 && iarra[2][0] == 1)
{
return 1;
}
if (iarra[0][2] == 2 && iarra[1][1] == 2 && iarra[2][0] == 2)
{
return 0;
}

return -1;
}

美女交个朋友啊!~!~





























































日出东方,唯我不败! 做任何东西都是耐得住寂寞,任何一个行业要有十年以上的积累才能成为专家
2006-04-29 20:14
韩章妮
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-4-26
收藏
得分:0 
太清楚了,非常感谢!
第一次来这里,这里的人真好啊,很热情啊!

我思故我在!
2006-04-30 13:06
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
严重B4 24楼的最后一句话~

淘宝杜琨
2006-04-30 13:22
oヤ偽妳變壞
Rank: 2
等 级:新手上路
威 望:4
帖 子:2251
专家分:0
注 册:2006-3-19
收藏
得分:0 

支持了!!!!!!!!!!!!

2006-04-30 13:23
闯城狼
Rank: 1
等 级:新手上路
帖 子:126
专家分:0
注 册:2006-3-27
收藏
得分:0 

我也是广东金融学院的哦,你是大一哪个班的?

2006-04-30 22:04
长风破浪
Rank: 1
等 级:新手上路
帖 子:169
专家分:0
注 册:2005-10-9
收藏
得分:0 
请问小女子你学什么专业,初学者就编这种等程序,你们老师是不是很厉害?

The way ahead is long; I see no ending, yet high and low I’ll search with my will unbending.
2006-05-01 13:06
长风破浪
Rank: 1
等 级:新手上路
帖 子:169
专家分:0
注 册:2005-10-9
收藏
得分:0 

不能在这里拉关系,这是知识交流的地方


The way ahead is long; I see no ending, yet high and low I’ll search with my will unbending.
2006-05-01 13:08
快速回复:请教各位前辈一个程序的编写
数据加载中...
 
   



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

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