#include<stdio.h>//二分查找!!!!每天以后会写三篇关于循环的程序!!!
int main()
{
int arr[]={1,2,3,4,5,6,7,8,9,10};//定义10个数;
int k=7;
int tom=0;
int sum=sizeof(arr)/sizeof(arr[0]);//看数组里面有多少个单元!!
int left=0;
int right=sum-1;//一个从程序的前面,一个从程序的后面 ;
while(left<=right)
{
int sz=(left+right)/2;//求中间的值!!
if(arr[sz]>k){
right=sz-1;
}
else if(arr[sz]<k){
left=sz+1;
}
else {
printf("找到了下标是%d",sz);break;//这个break一定要放在括号里!!!
}
}
if(left>right){
printf("找不到");
}
}
c语言的二分查找
最新推荐文章于 2024-07-21 22:27:18 发布
本文详细介绍了如何在C语言中编写一个二分查找算法,通过循环结构遍历数组并找到目标值的正确位置。如果目标值存在,则输出其下标,否则提示未找到。
摘要由CSDN通过智能技术生成