练习八(半分法练习)

#include<stdio.h>
#include<stdlib.h>
int main(){
  int arr[] = { 10, 13, 15, 14, 16, 19, 18, 20 };
  int i = 0;
  int left = 0;
  int right = sizeof(arr) / sizeof(arr[0]) - 1;
  int key = 18;
   int mid = 0;
  while(left <= right){
   mid = (left + right) / 2;
   if (key > mid){
    left = mid + 1;
   }
   else if (key < mid){
    right = mid - 1;
   }
   else
    break;
  }
  if (left = right){
   printf("找到了,下标为%d\n", mid);
  }
  else
   printf("找不到");
 
   system("pause");
 return 0;
 }

posted @ 2019-11-21 15:49  哈哈,呵呵,嘿嘿  阅读(111)  评论(0)    收藏  举报