當前位置:編程學習大全網 - 編程軟體 - 用c語言實現折半查找

用c語言實現折半查找

#include<stdio.h>

int find(int a[],int x,int n,int m)

{int i;

if(n>m)return -1;

i=(n+m)/2;

if(a[i]==x)return i;

if(a[i]>x)return find(a,x,n,i-1);

return find(a,x,i+1,m);

}

int main()

{

int a[20]={2,3,6,7,12,18,19,21,25,28,30,33,37,39,42,45,47,49,50,51};

int x,i;

printf("已有的數是:\n");

for(i=0;i<20;i++)

printf("%d ",a[i]);

printf("\n請輸入要查找的數:");

scanf("%d",&x);

if((i=find(a,x,0,19))>=0)

printf("%d是第%d個數\n",x,i+1);

else printf("未找到%d\n",x);

return 0;

}

  • 上一篇:華為vr開發部門在哪
  • 下一篇:什麽是少兒編程學習?
  • copyright 2024編程學習大全網