关于##include#的问题,如何解决?

感觉没有问题了,为什么还一直输出不存在。


#include <stdio.h>
int search(int key,int a[],int len); 
int amout[]={1,3,4,5,6,8,25,36,47,};//初始化 
int main()
{
    int k=1;
//    int r=(k,amout[],sizeof(amout)/sizeof(amout[0]));//,main里调用函数。 
     int r=search(k,amout,sizeof(amout)/sizeof(amout[0]));
    if(r==-1)//if(ret==-1)主函数里看 //主函数里就用r 来判断。 
    {
        printf("不存在该值");
    }else{
        printf("amout[%d]=%d",r,amout[r]);
    }
    return 0;//r和ret可不一样。 
}

//二分法, 函数, 
int search(int key,int a[],int len)
{   int ret=-1;
    int left=0;
    int right=len-1;
    //int middle=(left+right)/2;移到里面。 
//    int k;
    while(right>left){
        int middle=(left+right)/2;
        if(a[middle]==key){
            ret=middle;
            break;
        }else if(a[middle]<key){
            left=middle+1;
            
        }else{
            right=middle-1;
        }
    }
     
    return ret;
}
#include <stdio.h>
int search(int key, int a[], int len);
int amout[] = {1, 3, 4, 5, 6, 8, 25, 36, 47}; // 初始化
int main()
{
    int k = 1;
    int r = search(k, amout, sizeof(amout) / sizeof(amout[0]));
    if (r == -1)
    {
        printf("不存在该值");
    }
    else
    {
        printf("amout[%d]=%d", r, amout[r]);
    }
    return 0;
}

// 二分法, 函数
int search(int key, int a[], int len)
{
    int ret = -1;
    int left = 0;
    int right = len - 1;
    int middle;

    while (right >= left) // 修改此处的while循环判断条件
    {
        middle = (left + right) / 2;
        if (a[middle] == key)
        {
            ret = middle;
            break;
        }
        else if (a[middle] < key)
        {
            left = middle + 1;
        }
        else
        {
            right = middle - 1;
        }
    }

    return ret;
}

img