数组的应用

来源:6-6 数组的应用(二)

技术岗不用看老板脸色

2018-03-26 12:26

int getIndex(int arr[5],int value)
{
    int i;
    int index;
    for(i=0;i<5;i++)
    {
       /* 请完善数组查询功能 */
       if(arr[i]==value)     
          {
              index= i;
              break;
          }
          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;   
}

如果8不止一个呢?不用break为什么错?

写回答 关注

2回答

  • 宽容囖
    2018-03-26 18:34:29
    已采纳

    #include <stdio.h>

    int getIndex(int arr[5],int value)

    {

        int i;

        int index;

        for(i=0;i<5;i++)

        {

           /* 请完善数组查询功能 */

           if(arr[i]==value)       

              {

                  index=i;

                  //break;

              }         

        }

        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;    

    }


    技术岗不用看...

    非常感谢!

    2018-03-26 19:01:48

    共 1 条回复 >

  • 宽容囖
    2018-03-26 18:32:34

    用break不会出错,只会找到数组中最后一个值是8的位置,但你下面有一行index=-1,使之报错,将这行去掉就行了,

C语言入门

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

926023 学习 · 20793 问题

查看课程

相似问题