這個(gè)數(shù)組查找代碼中上面的函數(shù)不懂
#include <stdio.h>
int getIndex(int arr[5],int value)
{
? ? int i;
? ? int index;
? ? for(i=0;i<5;i++)
? ? {
? ? ? ?/* 請(qǐng)完善數(shù)組查詢功能 */
? ? ? ?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); ? ? ?//這里應(yīng)該傳什么參數(shù)呢?
? ? if(index!=-1)
? ? {
? ? ? ? printf("%d在數(shù)組中存在,下標(biāo)為:%d\n",value,index); ? ? ? ? ? ??
? ? }
? ? else
? ? {
? ? ? ? printf("%d在數(shù)組中不存在。\n",value); ? ?
? ? }
? ? return 0; ? ?
}
2016-04-03
for(i = 0;i<5;i++) //循環(huán)遍歷arr數(shù)組;
if(arr[i]==value)//value是一個(gè)固定值,用value跟arr中的每一個(gè)元素進(jìn)行比較;
//如果arr[i]==value 也就是說(shuō)arr中的第i個(gè)元素和value相等
index=i;//記錄這個(gè)下標(biāo),可以用下標(biāo)arr[index]取得和value相等的那個(gè)值
break;//已經(jīng)找到了 就不用再繼續(xù)下去,跳出循環(huán)
else{
index=-1;//在這段代碼中,每次循環(huán)都會(huì)執(zhí)行這條語(yǔ)句,if判斷沒有找到,index默認(rèn)為-1;
}
return index;??? //如果找到了相應(yīng)的值,index為數(shù)組中的對(duì)應(yīng)下標(biāo),如果沒有找到,index=-1;