int binary_search(int array[], int b, int e, int key) { int t = (e - b) / 2 + b; if (array[t] == key) return t; if (array[t] < key) return binary_search(array, t, e, key); if (array[t] > key) return binary_search(array, b, t, key); }
int main(void) { int array[ARRAYSIZE]; char buff[BUFFSIZE]; int i;
puts("Input Number(s)."); for (i = 0; i < ARRAYSIZE; ++i) { fgets(buff, BUFFSIZE, stdin); if (atoi(buff) == 0) break; array[i] = atoi(buff); } printf("Input Number. :"); fgets(buff, BUFFSIZE, stdin); printf("index: %d\n", binary_search(array, 0, i, atoi(buff)));