A-A+

#include<stdio.h>main(){int a[]={0 2 5 8 12 15

2022-08-06 10:42:47 问答库 阅读 178 次

问题详情

#include<stdio.h>
main()
{int a[]={0,2,5,8,12,15,23,35,60,65};
intx=15,i,n=10,m;
i=n/2+1;m=n/2;
while(m!=0)
{if(x<a[i]){i=im/2-1;m=m/2;}
elseif(x>a[i]){i=i+m/2+1;m=m/2;}
else break;}
printf("place=%d",i+1);
}
程序运行结果是:_____

参考答案

正确答案:
place=6[解析] 该程序关键表达式x<a[i],x=15和a[5]元素比较,结果为假。再次x>a[i]比较结果仍然为假,所以结束循环。输出i+1=6。

考点: