按着参考代码打了一遍,照搬过去却运行不了。
#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 idnex = getIndex(arr, value);
if(index != -1)
{
printf("%d在数组中存在,下标为:%d\n",value, index);
}
else
{
printf ("%d在数组中不存在。\n",value);
}
return 0;
}
你的int idnex = getIndex(arr, value); 这句中idnex错了,改成index就好。
你那个5要去掉,你打arr【5】,这就代表是arr【】数组中的第五个元素,而不是整个数组
#include <stdio.h>
int getIndex(int arr[],int value)//你这定义错了!
{
int i;
int index=-1;
for(i=0;i<5;i++)
{
/* 请完善数组查询功能 */
if(arr[i]==value)
{
index=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;
}