C++关于一个简单的随机排序问题。

来源:百度知道 编辑:UC知道 时间:2024/05/11 00:00:58
最近学习了VC,想用VC++ 做一个小的成果出来。斗兽棋。分红黑2方。每方8个棋子。我怎样实现把这些棋子,随机的分布在我的棋盘上。是用rand函数。我怎样分布?是用二维数组,一维。在线求答!
如图所示。要随机出红黑方的棋子。而且所有棋子都是不同的。比如我把所有的棋子设置成数组。vecter[0]-vecter[15]。每一个代表一种不同的棋子:象、狮、虎、豹、狼、狗、猫、鼠。

不要用rand函数,rand是随机数表生成随机数,不顶用的,网上有很多开源的随机函数,你可以去找找,还有就是你那小游戏的关键是胜负局势的判断,判断电脑各个时候要怎么走,这才是关键
int main()
{
int a[16]={0},n,i=0,j=0,x;
srand(time(NULL));
while (true)
{
n=rand()%17;
for (i=0;i<j;i++)
{
if (a[i]==n||n==0)
{
break;
}
}
if (a[i]==n||n==0)
{
continue;
}
a[i]=n;
printf("%3d",a[i]);
x++;
if(x%4==0)
printf("\n");
j++;
if (i==15)
{
break;
}
}
return 0;
}

int main()
{
int a[16]={0},n,i=0,j=0,x;
srand(time(NULL));
while (true)
{
n=rand()%17;
for (i=0;i<j;i++)
{
if (a[i]==n||n==0)
{
break;
}
}
if (a[i]==n||n==0)
{
continue;
}
a[i]=n;
printf("%3d",a[i]);
x++;
if(x%4==0)
print