我做了一个简单的顺序搜索功能,所以当我测试它时,如果我把25放入我的搜索项目它返回true,但其他数字90,21总是假的我不能明白为什么要这样做。
select2()
答案 0 :(得分:8)
如果您的元素不在第一个位置,则返回false。试试这个
bool sequentialSearch(int searchItem, int * a, int size)
{
for(int i = 0; i < size; i++)
{
if(searchItem == a[i])
{
return true;
}
}
return false;
}
答案 1 :(得分:3)
你的for循环最终只检查第一项,然后返回true或false。您需要更改逻辑以执行类似
的操作for( . . . )
{
if(searchItem == a[i]) return true;
}
return false;
这样它将测试数组中的每个项目,如果没有找到则返回false。