BINARY.C
资源名称:C.rar [点击查看]
上传用户:qq5388545
上传日期:2022-07-04
资源大小:29849k
文件大小:1k
源码类别:

界面编程

开发平台:

C/C++

  1. #include <stdio.h>
  2. int binary_search(int array[], int value, int size)
  3.  {
  4.    int found = 0;
  5.    int high = size, low = 0, mid;
  6.    mid = (high + low) / 2;
  7.    printf("nnLooking for %dn", value);
  8.    while ((! found) && (high >= low))
  9.     {
  10.       printf("Low %d Mid %d High %dn", low, mid, high);
  11.       if (value == array[mid])
  12.         found = 1;
  13.       else if (value < array[mid])
  14.         high = mid - 1;
  15.       else
  16.         low = mid + 1;
  17.       mid = (high + low) / 2;
  18.    }
  19.   return((found) ? mid: -1);
  20.  }
  21. void main(void)
  22.  {
  23.    int array[100], i;
  24.    for (i = 0; i < 100; i++)
  25.      array[i] = i;
  26.    printf("Result of search %dn", binary_search(array, 33, 100));
  27.    printf("Result of search %dn", binary_search(array, 75, 100));
  28.    printf("Result of search %dn", binary_search(array, 1, 100));
  29.    printf("Result of search %dn", binary_search(array, 1001, 100));
  30.  }
  31.   
  32.