二分法查找C语言实现

二分法查找C语言实现:在这里插入图片描述
while的条件里,也可把k<0写到循环体里面去,用break语句跳出循环,break可以用在循环语句中,也可用在switch语句中。在这里插入图片描述
C语言实现:

#include
using namespace std;
int main()
{
short low{ 0 }, high{ 19 }, mid{0},k{ -1 };
int m;//想要查找的值
short i = 0;
int a[]{ 66,88,92,97,101,233,554,655,782,985,1123,2324,2522,2782,3358,45232,88754,69999,78259,232145 };
cout << “数组a的值:”;
for (i = 0; i < 20; i++)
cout << a[i]<<" ";
cout << "\n请输入想要查找的值: ";
cin >> m;

while (low <= high&&k<0)
{
    mid = (low + high) / 2;
    if (m > a[mid])
        low = mid + 1;
    else if (m < a[mid])
        high = mid - 1;
    else
        k = mid;
}
if (k >= 0)
    cout << "index : " << k << endl;
else
    cout << "Not be found."<< endl;
system("pause");

}

发布了2 篇原创文章 · 获赞 0 · 访问量 48

猜你喜欢

转载自blog.csdn.net/Paul_YQ/article/details/104229063