二分法排序.txt

来自「有15个数按由小到大顺序放在一个数组中」· 文本 代码 · 共 46 行

TXT
46
字号
#include <stdio.h> 

int a[15]={1,2,3,4,5,6,7,8,9,10,11,13,14,15,16}; 

int search(int key,int left,int right) 
{ 
int mid; 
if(left==right) 
{ 
if(a[left]==key) 
return left; 
else 
return -1; 
} 
else 
{ 
mid=(left+right)/2; 
if(mid==left) 
mid++; 
if(key<a[mid]) 
return search(key,left,mid-1); 
else 
return search(key,mid,right); 
} 
} 

int main() 
{ 
int in; 
while(true) 
{ 
printf("请输入查找值:(输入0退出)\n"); 
scanf("%d",&in); 
if(in==0) 
break; 
else 
{ 
in=search(in,0,14); 
if(in==-1) 
printf("该数不存在\n"); 
else 
printf("该数的索引值为:%d\n",in); 
} 
} 
return 0; 
} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?