哪里错了?
自己用折半查找法写了个程序但不知道哪里错了,请各位帮忙看看是哪里错了,谢谢了,程序如下:
#include<iostream>
using namespace std;
int main()
{
int a[11]={11,10,9,8,7,6,5,4,3,2,1};
int i,l,h,m ,n;
l=0;
h=10;
m=(l+h)/2;
cout<<"请输入要查找的数:";
cin>>n;
for(i=0;i<11;i++)
if((n>a[0])||(n<a[10]))
{
cout<<"无此数。"<<endl;
break;
}
else if(n==a[m])
{
cout<<"要查找的数为第"<<m+1<<"个元素."<<endl;
break;
}
else if(n<a[m])l=m+1;
else h=m-1;
return 0;
}