折半查找:
数字:1,2,3,4,5,6,7,8,9,10
下标:0,1,2,3,4,5,6,7,8,9
(0+9)/2=4 low=5 5<9 输出
(4+9)/2=6 low=7 7<9 输出
(6+9)/2=7 low=7 8<9 输出
(7+9)/2=8 low=9 9<9(错误) 不能输出,所以程序改正时应加上=
当低位进行比较时,由于相等时已经进行比较一次则不可重复进行比较,所以,
当mid<key时,将mid值往后加一位进行比较
当mid>key时,将mid值往前挪一位进行比较
输出结果时由于起始值给定为0,不在所查找的范围之内,输出-1
后面值依次输出下标,到9结束,查找3次,后面两次也为-1
#include<stdio.h>
int BinSearch(int*arr,intlen,