#include 
 #include 
using namespace std;
 /int/void BinSearch1(vector& R,int k,int &n) //计算查找的次数
 {
 int h=R.size(); //h为数组的长度
 int low=0,high=h-1;
 while(low<=high) //折半循环
 {
 int mid=(low+high)/2;
 if(kR[mid])
 {
 cout<<n+1;
 break;
 /return R[mid];/
 }
 else
 {
 n++; //记录比较次数
 }
 if(k<R[mid]) //满足条件则k的序号小于为mid
 {
 high=mid-1;
 }
 if(k>R[mid]) //满足条件则kd的序号大于mid
 {
 low=mid+1;
 }
 }
 /* return -1;*/
 }
 /*void BinSearch2(vector& R,int k)
 {
 int n=0,a;
 a=BinSearch1(R,k,n);
 if(ak)
 {
 n++;
 cout<<“比较次数为:”<<n<<endl;
 }
 else
 {
 cout<<“关键字不在表中”<<endl;
 }
}*/
int main()
 {
 vector R;
 int i;
 cout<<“创建数组:”;
 while(cin>>i)
 {
 R.push_back(i); //将i加到动态数组的末尾,push_back()为vector中的方法
 if(cin.get()==’\n’)
 {
 break;
 }
 }
 int k;
 cout<<“查找的值为:”;
 cin>>k;
 int b=0;
 BinSearch1(R,k,b);
 return 0;
 }










