📄 二分法.txt
字号:
void fun (int a[12], int m)//用二分查找法找到输入的数的函数
{
int kaishi=0;//开始坐标
int jieshu=11;//结束坐标
int zhongjian;//中间坐标
int panduan=0;//判断符,开始赋0
if (m>=a[0]&&m<a[11])
{
while(!(panduan)&&(m>=a[kaishi])&&(m<=a[jieshu]))/*判断循环的语句是“找到了哪个数”或者
“数已经不在开始和结束的范围了”*/
{
zhongjian = (kaishi+jieshu)/2;
if (m==a[zhongjian])
{
printf ("%d找到了,它是:a[%d]\n", m, zhongjian);
panduan=1;//找到数对panduan赋1
}
else if (a[zhongjian]>m)
jieshu=zhongjian-1; //若中间的数大于m,则在中间数左边找
else
kaishi=zhongjian+1; //若中间的数小于m,则在中间数右边找
}
if(panduan==0)
printf ("没有找到你要找的数\n");
}
else if(m==a[11])
printf ("%d找到了,它是:a[11]\n", m);//因为a[11],在for循环中无法找到,故单独判断
else
printf ("你输入的数超出查找范围\n");
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -