#include
using namespace std;
int main()
{
int a[15]={15,14,13,12,11,10,9,8,7,6,5,4,3,2,1};
int p,mid,start,end;
while(cin>>p){
start=0;end=14;
if(p>a[0]||p else if(p==a[0])cout<<"该数是数组中第1个元素的值"<
do{
if((end-start)<=1){
if(p==a[start]){cout<<"该数是数组中第"<
if(p==a[mid]){cout<<"该数是数组中第"<
end =mid-1; ////// 算法出现了 问题
else
start =mid+1; /////
}while(mid>=1&&mid<=13);
if(!find)cout<<"无此表"<
}
两句算法有问题 上面就是正确的就是改了两行算法而已。 很简单 你看看就明白,你可能大意了。OK 给分吧 老兄。三秋