代码错在什么地方?

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

慕粉2228511008

2017-05-13 14:11

#include <stdio.h>
int getIndex(int arr[5],int value)
{
    int i;
    int index;
    for(i=0;i<5;i++)
    {
      if(arr[i]==value)
          
       {
         return i; 
          
       }  
      
      
      
    }
    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;   
}


写回答 关注

4回答

  • wangqicc
    2017-07-27 13:21:16

    代码是对的,只是这个判题系统不认定这样的代码

  • qq_北城以北的远方_04368497
    2017-05-25 16:11:46

    index未赋值


  • 丨丶老唐
    2017-05-21 00:12:22

       index 为局部变量,为静态局部变量,对静态局部变量来说,编译时自动附初值0(对数值型变量)或对字符型变量,自动赋值为'\0'

    后会无期_ 回复丨丶老唐

    我只是一名小白,太高深的还不懂,还请大神多多指教,哈哈

    2017-05-22 09:54:28

    共 4 条回复 >

  • qq_眸光_0
    2017-05-13 17:22:31

    我是这样觉得的:  return index;既没有赋初值,循环中也没有赋值,它没得返回的东西。

C语言入门

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

926026 学习 · 20793 问题

查看课程

相似问题