Alone风
2018-07-21 20:45
int index=getIndex(arr,value);
这不是令index将getIndex函数的值赋给index?为什么index最后等于元素的下标了?
i=0;它从arr[i]也就是arr[0]一直往上找。。。直到找到arr[i]==8;那么i现在的值是3.然后把3赋值给index. 然后返回去、、、getIndex(arr,value) 这个返回值是3;
其实理解很简单的,不要放弃哦,
在main函数中,int index = getIndex(arr,value);
他的意思是将int getIndex(int arr[5],int value)最终计算返回的return index的值给了index
-------------------------------------------------------------------------------------------------------------------
int getIndex(int arr[5],int value)
{
int i;
int index;
for(i=0;i<5;i++)
{
if(arr[i]==value)
{
index=i; /*i的值付给了index*/
break;
}
index= -1;
}
return index;
/*index是int getIndex(int arr[5],int value)函数的计算的最终结果 ,当然这个结果可能是i,也有额可能是-1.此题结果是i=3,而且将i的值付给了index,break用来终止了函数,并且return index(返回index),此时的index其实就是i,因为刚刚我峨们把i的值付给了index*/
}
------------------------------------------------------------------------------------------------------------------
int main()
{
int arr[5]={3,12,9,8,6};
int value = 8;
int index = getIndex(arr,value); //这里应该传什么参数呢?,此处的参数就是上个函数的index,也就是i
if(index!=-1)
{
printf("%d在数组中存在,下标为:%d\n",value,index);
}
else
{
printf("%d在数组中不存在。\n",value);
}
return 0;
}
--------------
懂了吗
s算了 这问题太难了 你们说了我也接受不了
C语言入门
926209 学习 · 20797 问题
相似问题