#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; }
2 回答
已采纳
望远
TA贡献1017条经验 获得超1032个赞
/***************
本程序实现的功能:通过函数调用,返回数组中第一个出现元素value的下标,不存在时返回-1
**********************/
#include <stdio.h>
int getIndex(int arr[5],int value)
{
int i;
int index;
for(i=0;i<5;i++)
{
/* 请完善数组查询功能 */
if(arr[i]==value) //判断数组中的元素的值是否和参数传入的value相等,相等就找到了
{
index=i;//找到之后用index记录对应元素下标
break;//找到之后直接跳出for循环
}
else
{
index=-1;//当所有元素遍历完之后index的值就是-1
}
}
return index;//返回index的值
}
int main()
{
int arr[5]={3,12,9,8,6};
int value = 8;
int index = getIndex(arr ,value); //这里直接传入一个数组名+要查询的变量
if(index!=-1)//通过判断index的值可知是否存在value
{
printf("%d在数组中存在,下标为:%d\n",value,index);
}
else
{
printf("%d在数组中不存在。\n",value);
}
return 0;
}- 2 回答
- 0 关注
- 1429 浏览
添加回答
举报
0/150
提交
取消
