[求助]请教一个数组问题
大家好,可不可以帮我看一下下面程序中数组“a[]”为什么是11呢?恳请指点迷津~谢谢~~
题目是这样的:10个小孩围成圈,老师发糖,分别是12,2,8,22,16,4,10,6,14,20块糖,然后,所有小孩把自己手中的糖分一半给右边的小孩,糖块数变为奇数的人,再向老师补要一块,问要经过多少次10个孩子才能拥有相同数量的糖,且糖块数各为多少。
程序如下:
main()
{
int i,n=0,f=1,a[11]={12,2,8,22,16,4,10,6,14,20};
for(i=0; i<10; i++)
printf("%4d",a[i]);
while(f)
{
f=0; n++; a[10]=a[0];
for(i=0; i<10; i++)
{
a[i]=(a[i]+a[i+1])/2;
if(a[i]%2!=0) a[i]++;
}
for(i=1; i<10; i++)
if(a[0]!=a[i])
{
f=1;
break;
}
}
printf("\nn=%d,a[1]=a[2]=...a[10]=%d\n",n,a[0]);
getch();
}