#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;
}
代码是对的,只是这个判题系统不认定这样的代码
index未赋值
index 为局部变量,为静态局部变量,对静态局部变量来说,编译时自动附初值0(对数值型变量)或对字符型变量,自动赋值为'\0'
我是这样觉得的: return index;既没有赋初值,循环中也没有赋值,它没得返回的东西。