```c #include <stdio.h> int binary_search(int arr[], int n, int x) { int left = 0; int right = n - 1; while (left <= right) { int mid = left + (right - left) / 2; if (arr[mid] == x) { return mid; } else if (arr[mid] < x) { left = mid + 1; } else { right = mid - 1; } } return -1; } int main() { int arr[] = {2, 3, 4, 10, 40}; int n = sizeof(arr) / sizeof(arr[0]); int x = 10; int result = binary_search(arr, n, x); if (result == -1) { printf("元素不在数组中"); } else { printf("元素在数组的索引为 %d", result); } return 0; } ``` [2024-06-30 11:30:15 | AI写代码神器 | 263点数解答]