标签:代码 nbsp include eof 数组 else lse pre 二分查找
//第一次尝试:
#include<stdio.h> int main() { int arr[] = { 1,2,3,4,5,6,7 };//查找6 int left = 0; int right = sizeof(arr) / sizeof(arr[0]) - 1; //printf("%d\n", right); int toFind = 6; while(left<=right) { int mid = (left + right) / 2; if (arr[mid]>toFind) { right=mid-1; } else if (arr[mid] < toFind) { left = mid + 1; } else { printf("下标为%d\n", mid); break; } } if (left > right) { printf("未找到\n"); } return 0; }
//实现了二分查找,但仅限于有序数列才有效,因此代码中给定了一组数组,未让用户手动输入。
//在进行一次二分查找之后,要注意mid的加或减,不能搞混了。
标签:代码 nbsp include eof 数组 else lse pre 二分查找
原文地址:https://www.cnblogs.com/zhm521/p/13839221.html