c语言编程实现“折半查找”的过程。

c语言编程实现“折半查找”的过程。

// Vc运行

//函数10

void f10()

{

int i,j,n=15,m=0;

float a[15],k;

printf("此函数为: 将15数从小到大的顺序输入到一个数组中。

\n输入任意一个数,用折半查找法(折半之后再查找)找到在该数组中的位置。

\n若不在输出“不在数组中”\n");

printf("请按从小到大依次输入15个数:\n");

for(i=0;i<15;i++)

scanf("%f",&a[i]);

printf("请输入任意一个数:");

scanf("%f",&k);

printf("输出为:\n");

j=n/2;

for(i=1;m==0;i++)

{

if(k<a[0]||k>a[n-1])

{m=1; printf("该数不在其数组中\n");}

else if(j<0||j>(n-1))

{m=1; printf("该数不在其数组中\n");}

else if(k==a[j])

{m=1;printf("该数为在数组中的第%d元素\n",j+1);}

else if(k<a[n/2])

j--;

else if(k>a[n/2])

j++;

}

system("pause...");

}

不好意思,我的是错的

首页