小甲鱼!!!我自己写出来了!!!给你看!!!#include <stdio.h>
int find(int [], int, int, int);
int find(int a[], int num, int l, int r)
{
int result;
if(l == r)
{
result=l;
}
else
{
if(a[(r+l)/2]>=num)
{
result=find(a, num, l, (r+l)/2);
}
else if(a[(r+l)/2+1]<=num)
{
result = find(a, num, (r+l)/2+1, r);
}
}
return result;
}
int main()
{
int array[]={1, 3, 5, 7, 9, 11, 13, 15, 17, 19};
int target;
int loc;
printf("请输入一个整数:");
scanf("%d",&target);
loc=find(array, target, 0, 9);
printf("数组下标为:%d\n",loc);
printf("是数组中的第%d个数",loc+1);
return 0;
}
|