c语言二分法查找不用函数
时间: 2025-01-30 09:37:20 浏览: 29
### C语言实现二分法查找(不用函数)
在C语言中,可以直接在`main`函数内编写逻辑而不必通过单独定义函数来完成二分查找操作。下面展示如何在一个有序数组中寻找特定的目标值。
```c
#include <stdio.h>
int main() {
int nums[] = {-1, 0, 3, 5, 9, 12};
int numsSize = sizeof(nums) / sizeof(int);
int target;
printf("请输入要查找的目标值:");
scanf("%d", &target);
int low = 0;
int high = numsSize - 1;
while (low <= high) {
int mid = low + ((high - low) >> 1); // 防止溢出的方式计算中间位置
if (nums[mid] == target) {
printf("找到目标值 %d 的索引为:%d\n", target, mid)[^1];
break;
}
if (nums[mid] < target) {
low = mid + 1;
} else {
high = mid - 1;
}
}
if (low > high) {
printf("未找到目标值。\n");
}
return 0;
}
```
此程序首先初始化了一个名为`nums`的整型数组以及获取其长度。接着提示用户输入想要查询的目标值,并利用while循环执行二分查找过程直到发现该元素或是确认不存在为止。注意这里采用了防止越界的方法来更新mid的位置。
阅读全文
相关推荐


















