折半查找法,程序运行的时候只有一个结果肿么破!!!
程序代码:
#include "stdio.h" int main(void) {int a[15]; int i,j,t,min,mid,max,p; printf("Please input the array:\n"); for(i=0;i<15;i++) scanf("%d",&a[i]); printf("\n"); for(i=1;i<15;i++) for(j=0;j<15-i;j++) if(a[j]<a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;} printf("The consecution is:\n"); for(i=0;i<15;i++) printf("%5d",a[i]); printf("\n"); /*以上将数组按倒序排序*/ printf("Please input a number:"); scanf("%d",&p); max=a[0];min=a[14]; for(;min<a[0];) {mid=(max+min)/2; if(p==mid){printf("The number is in the array!");break;} else if(p>mid)min=mid+1; else max=mid-1; } /*折半查找*/ }//??