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

这样写对吗?

#include <stdio.h>
int getIndex(int arr[5],int value)
{
    int i;
    int index;
    for(i=0;i<5;i++)
    {
       /* 请完善数组查询功能 */
       if (value == arr[i] )
       {
           index= i;
           return index;
       }
          
       
       
       
    }
    index=-1;
    return index;
}

int main()
{
    int arr[5]={3,12,9,8,6};
    int value = 8;
    int index = getIndex(arr , value);      //这里应该传什么参数呢?
    if(index!=-1)
    {
        printf("%d在数组中存在,下标为:%d\n",value,index);             
    }
    else
    {
        printf("%d在数组中不存在。\n",value);    
    }
    return 0;    
}

arr[i]和value调换位置不影响吧

正在回答

2 回答

对,你说的对,是我看错了,我看成了一个return,你的写法对没问题

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

1、arr[i] 和 value 互换位置是不影响比较的,谁在前面都一样。

2、getIndex(arr,value)方法里写的不对,应该加上else{index = -1;},不然按你的代码,永远返回index = -1;就算是有,也永远不存在。




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

elninot3117000559 提问者

那6-6左边例子里怎么可以?不是满足条件value==arr[i];就可以把i值赋给index然后再返回出来吗?
2017-03-03 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926207    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

这样写对吗?

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