twinkle_snow
2015-12-03 11:50简单的数组作为函数参数的调用问题
#include
main()
{
int a[10]={10,2,8,22,16,4,10,6,14,20};
int n=0;
int i;
int f(int);
while(f(a[])) (此处去除中括号则调试无误,这是为什么?)
{
n++;
for(i=0;i<=9;i++)
{
if(a[i]%2==1)
{
a[i]=(a[i]+1)/2;
a[i+1]+=(a[i]+1)/2;
}
else a[i]=a[i]/2;
}
}
printf("经过%d次调整,每人都有%d块糖\n",n,a[0]);
}
/*检查每个人糖果数是否相等的函数*/
int f(int b[])
{
int k;
for(k=1;k<=9;k++)
if(b[0]!=b[k]) return 1;
return 0;
}
- 点赞
- 回答
- 收藏
- 复制链接分享
2条回答
为你推荐
- 定义类的对象数组,调用有参构造函数时出错
- c++
- 1个回答
- Golang将数组传递给函数并对其进行修改
- c++
- arrays
- reference
- 2个回答
- 当结构数组作为函数参数时,如函数的作用是改变结构中元素的值,是否应该把参数设为指针?
- 指针
- 结构
- 5个回答
- 两个数组作为实际参数传给被调用函数的时候,没有敲长度,但可以正常运行
- c
- 4个回答
- js sort(function(a,b){})排序回调函数里如何复制传入的数组里的参数a,b
- javascript
- sort函数
- 2个回答
换一换