一道c语言题,实在不知道错在哪了。求教
有一组19个数的有序数列,数列元素自动生成,使用折半查找法查找某个数是否
[
#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int a[19],mid,top=0,bot=18,x;
printf("请输入要查找的元素:");
scanf("%d",&x);
for(i=0;i<19;i++)
{
a[i]=rand()%101;
printf("%d|t",a[i]);
}
printf("|n");
while(top<=bot)
{
mid=(top+bot)/2;
if(x==a[mid])
{
printf("成功找到元素a[%d]=%d\n",mid,x);
exit(0);
}
else if(x>a[mid])
top=mid+1;
else
bot=mid-1;
}
printf("没有找到该元素!\n");
return 0;
}