有人吗?
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#include<math.h>
#define pailiejuxingnum 8
#define chushiyinghuochongnum 10
int yinghuochong[chushiyinghuochongnum+1][pailiejuxingnum+1];
int pailiejiaodu[chushiyinghuochongnum+1][pailiejuxingnum+1];
double chayishu[chushiyinghuochongnum+1][chushiyinghuochongnum+1];
void shengchengfirefly() //生成初始萤火虫
{
int i,j,k;
srand(time(0));
printf("初始萤火虫是:\n");
for(i=1;i<=chushiyinghuochongnum;i++)
{
for(j=1;j<=pailiejuxingnum;j++)
{
pailiejiaodu[i][j]=rand()%2;
yinghuochong[i][j]=rand()%pailiejuxingnum+1;
for(k=1;k<j;k++)
{
if(yinghuochong[i][j]==yinghuochong[i][k])
{
yinghuochong[i][j]=rand()%pailiejuxingnum+1;
k=0;
}
}
printf("%d,%d\t",yinghuochong[i][j],pailiejiaodu[i][j]);
}
}
}
void main()
{
//计算任何两个萤火虫之间的元素差异数
int i,j,k;
shengchengfirefly();
for(i=1;i<=chushiyinghuochongnum;i++)
{
for(j=1;j<=chushiyinghuochongnum;j++)
{
int t=0;//差异数即汉明距离
for(k=1;k<=pailiejuxingnum;k++)
{
if(yinghuochong[i][k]-yinghuochong[j][k]!=0)
t=t+1;
continue;//两个萤火虫之间代码不同的数量
}
chayishu[i][j]=t;
//此时的i,j表示某两个个萤火虫之间
printf("第%d与%d个萤火虫间汉明距离:%d\n",i,j,chayishu[i][j]);
}
}
}
//基于轮盘赌方式选择移动 比自身荧光亮度大的方向移