一点问题
#include<stdio.h>
int cll(int a[8])
{
int j,b[8];
for(j=1;j<8;j++)
{
if (a[j-1]==a[j])
b[j]=1 ;
else
b[j]=0;
}
if (a[0]==a[7])
b[0]=1;
else b[0]=0;
return b[8];
}
void main()
{int j,b[8],a[]={0,1,0,1,0,1,0,1} ;
b[8]=cll(a);
for(j=0;j<8;j++)
printf("%d\n",b[j]); }
主涵数里面的那个b[8]和cll涵数的b[8]是不是一个数组啊???
----------------解决方案--------------------------------------------------------
我是菜鸟,谁帮一下啊.......
----------------解决方案--------------------------------------------------------
函数只可以返回一个值,你的意思好象要返回一个数组的值哦;
cll函数也好象有点问题吧
----------------解决方案--------------------------------------------------------
主涵数里面的那个b[8]和cll涵数的b[8]应该不是一个数组吧
----------------解决方案--------------------------------------------------------
不是一个数组,cll函数里那个数组b是当主函数调用cll函数是临时分配的,cll函数执行完毕后,cll函数中定义的b这个数组就会被释放掉了
----------------解决方案--------------------------------------------------------
是啊,你的CLL函数有问题,数组中只有8个数,怎么让它返回到b[8]了呢?别忘了数组下标是从0开始的哦
----------------解决方案--------------------------------------------------------
知道了,谢谢各位!!!
----------------解决方案--------------------------------------------------------
谢谢你给我解决问题啊!!
----------------解决方案--------------------------------------------------------