编辑代码

#include <iostream>

using namespace std;

void printArray(int array[], int arrLen) {
    for (int i = 0; i < arrLen; ++i) {
        cout << array[i] << " ";
    }
    cout << endl;
}
int binarySearchFirstLargerEqual(int searchKey, int array[], int arrLen) {
   int low = 0;
   int high = arrLen - 1;
   int keyPos = -1;

     while (low <= high) {
        int mid = low +((high - low + 1) >> 1);
        if (array[mid] >= searchKey) {
            if (mid == 0 || array[mid - 1] < searchKey) {
                keyPos = mid;
                break;
            }
            else {
                high = mid - 1;
            }
            
        }
        else {
            low = mid + 1;
        }
    }

   return keyPos;
}
int main()
{
    int array1[] = {7,8,9,12};
    int arrayLen = sizeof(array1)/sizeof(int);
    printArray(array1, arrayLen);
    cout << "Array Pos of 9: "<< binarySearchFirstLargerEqual(9, array1, arrayLen) << endl;
}