#includestdio.h//主函数intNotRecursionbinarySearch(intarray[],intlength,intsearchDate){intleft=0;intright=length-1;//设置最左边和最右边的标杆if(array==NULL||length=0){return-1;}elsewhile(left=right){intmiddle=(right+left)/2;if(array[middle]==searchDate){returnmiddle;}else{if(array[middle]searchDate){left=middle+1;}else{right=middle-1;}}}}intRecursionbinarySearch(intarray[],intsearchDate,intstart,intend){intmid;if(array==NULL||startend){return-1;}if(start=end){mid=(start+end)/2;if(array[mid]==searchDate){returnmid;}else{if(array[mid]searchDate){returnRecursionbinarySearch(array,searchDate,start=mid+1,end);}else{returnRecursionbinarySearch(array,searchDate,start,end=mid-1);}}}}voidmain(){intarray[]={1,5,6,7,8,9,44,66,99,101};intlength=sizeof(array)/sizeof(array[0]);intindex=NotRecursionbinarySearch(array,length,9);intindex1=RecursionbinarySearch(array,9,0,9);printf(用非递归算法实现);printf(用非递归算法实现该数字在数组中的序号是%d,index);printf(\n);printf(用递归算法实现);printf(用递归算法实现该数字在数组中的序号是%d,index1);printf(\n);}