加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

每次在C中返回false

发布时间:2020-12-16 10:13:32 所属栏目:百科 来源:网络整理
导读:我做了一个简单的顺序搜索功能,所以当我测试它时,如果我将25放入我的搜索项中它返回true,但其他数字90,21总是假的,我无法理解它为什么这样做. int a[] = {25,90,21};int searchItem = 90;if(sequentialSearch(searchItem,a,3) == 1){ cout "Found Item" endl
我做了一个简单的顺序搜索功能,所以当我测试它时,如果我将25放入我的搜索项中它返回true,但其他数字90,21总是假的,我无法理解它为什么这样做.

int a[] = {25,90,21};
int searchItem = 90;

if(sequentialSearch(searchItem,a,3) == 1)
{
     cout << "Found Item" << endl;
}
else
{
     cout << "Item Not Found" << endl;
}

bool sequentialSearch(int searchItem,int * a,int size)
{
    for(int i = 0; i < size; i++)
    {
        if(searchItem == a[i])
        {
            return true;
        }
        else
        {
            return false;
        }
    }
}

解决方法

如果您的元素不在第一个位置,则返回false.试试这个

bool sequentialSearch(int searchItem,int size)
{
    for(int i = 0; i < size; i++)
    {
        if(searchItem == a[i])
        {
            return true;
        }
    }
    return false;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读