当我使用这个函数时,它返回-1,即使数组的元素在那里。
int linear_search(int arr[], int length, int target)
{
for (int i=0; i < n; i++) {
if (arr[i] == target){
return i;}
return -1;
}
}
然后我去掉了花括号,结果成功了
int linear_search(int arr[], int length, int target)
{
for (int i=0; i < n; i++)
if (arr[i] == target)
return i;
return -1;
}
1条答案
按热度按时间6pp0gazn1#
如果
arr[i] != target
,第一个函数将在第一次迭代时返回-1,因为在循环中return
语句跟在if
语句之后。