问问大家,我这里为什么怎么打值都是一啊

img


我这边不知道是主函数的问题还是什么问题,值恒为一了,是return错了嘛,求指点下

修改如下,供参考:

#include <stdio.h>
#define N 10
int search(int *p, int x, int n)
{
    int i;
    for (i=0;i<n;i++)
    {
        if (*(p+i) == x)
            return i;
    }
    return -1;
}
int main()
{
    int indx,m,a[N]={10,20,35,40,44,45,50,51,60};
    scanf("%d", &m);
    indx=search(a,m,N);
    if (indx >= 0)
        printf("index=%d\n", indx);
    else
        printf("NOEXIST\n");
    return 0;
}