问答详情
源自:6-6 数组的应用(二)

大哥们啊,我这码子哪错了,怎么就是运行不了呢?

#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;

       }

    }

    else

    {

        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;    

}



提问者:蚂蚁的牙才不黑咧 2020-02-23 14:25

个回答

  • YunFei_Chen
    2020-02-23 15:52:15

    你的else语句放错了位置,else应该与if语句配套。

    #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;        }        else        {            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;}