提高篇—调用函数查找数组元素下标(二分法查找)

来源:互联网 发布:思纬网络 编辑:程序博客网 时间:2024/06/11 15:29

程序代码

#include <stdio.h>#define SIZE 10/**csdn学院--2016级*目的:让代码见证成长(作为一个初学的菜鸟,如*大家有发现错误,欢迎指正!)*文件名称:Myfun136.c*作者:小臣小仁*完成日期:2017年4月9日*/int binary_search(int [],int n,int k);int main(){    int d[SIZE]={12,31,39,45,63,65,67,79,87,92};    int key,index;    printf("Input key a you what to search:");    scanf("%d",&key);    index=binary_search(d,SIZE,key);    if(index>=0)        printf("The index is %d.\n",index);    else        printf("Not fund!\n");    return 0;}int binary_search(int arr[],int n,int k){    int i=-1;    int low=0,high=n-1,mid;    while(low<=high)    {        mid=(low+high)/2;        if(arr[mid]==k)        {            i=mid;            break;        }        else if(arr[mid]>k)            high=mid-1;        else            low=mid+1;    }    return i;}

输出结果

心得体会

作为一个大学二的菜鸟,开始慢慢前进,多多少少感到有收获,由于水平有限,多多少少有错,望包涵大笑

0 0