编辑代码

#include <stdio.h>

int binarySearch(int arr[], int n, int k) {
    int left = 0, right = n - 1;
    while (left <= right) {
        int mid = (left + right) / 2;
        if (arr[mid] == k) {
            return mid;
        } else if (arr[mid] > k) {
            right = mid - 1;
        } else {
            left = mid + 1;
        }
    }
    return -1;
}

int main() {
    int arr[] = {6, 17, 25, 34, 52, 63, 85};
    int n = sizeof(arr) / sizeof(int);
    int k = 6;
    int index = binarySearch(arr, n, k);
    if (index < 0) {
        printf("元素 %d 不存在\n", k);
    } else {
        printf("元素 %d 在数组中的下标是 %d\n", k, index);
    }
    return 0;
}