为了账号安全,请及时绑定邮箱和手机立即绑定

例子中getIndex(arr,value)函数的返回值怎么有两个?

当arr[3]==38时,为什么最后的函数是返回i=3而不是-1?


正在回答

4 回答

调用函数

0 回复 有任何疑惑可以回复我~

我来解释吧!

感觉楼上的都没有回答到题主想问的点子上。

其实一开始我也有楼主这种疑问,所以能理解楼主为什么会有这样的困惑。看例子中的循环语句,它是假如arr[i]==value的话那么就将i作为下标返回给函数。注意这里是重点,当程序到了返回函数值这一步的时候,其实就已经相当于给了一个结束改程序的命令,所以就不再进行接下去的操作,所以就不会和题主原来想的那样(我开始也是这么想的),循环语句结束,然后继续执行 “return -1”,这一步操作,所以也就不会再返还一个值了。

另一种情况,当在循环中并没有找到2个一样的值得时候,相当于在循环语句中没有执行到return这一步,所以程序将继续执行后面的内容,就是“return -1”这一步。

1 回复 有任何疑惑可以回复我~
#1

栩栩秋水

有道理!return代表结束调用,返回数值。
2016-02-22 回复 有任何疑惑可以回复我~

返回值只能是一个,getindex函数中,如果满足if条件,即找到数组arr[i]=38,就返回i,即返回下标给main里的index,如果不满足if条件,就是没找到,返回-1给index。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

例子中getIndex(arr,value)函数的返回值怎么有两个?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信