编写程序调用函数fun采用指针做函数参数,数fun的功能是:在数组中中查找某数据第一次出现的位置如果出现,函数返回此位置;如果数据不在 数组中出现则返回0:数组中数据数量为用户指定:

编写程序调用函数fun采用指针做函数参数,数fun的功能是:在数组中中查找某数据第一次出现的位置如果出现,函数返回此位置;如果数据不在
数组中出现则返回0:数组中数据数量为用户指定:



#include "stdio.h"
int fun(int a[],int n,int *p){
    int left,right,mid;
   
    left = 0;
    right= n-1;
    while(left<=right){
        //获取中间位置元素的下标
        mid = (left+right)/2;
        if(*p>a[mid]){
            //往右找
            left=mid+1;
        }else if(*p<a[mid]){
            //往左找
            right=mid-1;
        }else{
            break;
        }
    };
    return mid;
    
}
void main()
{
    int a[10]={1,2,3,4,5,8,10,110,120,1000};
    int index = -1;
    int num,cnt=0;
    printf("请输入你要查找的数据:");
    scanf("%d",&num);
       index = fun(a,10,&num);
    printf("%d的位置是:%d",num,index);
}
#include <stdio.h>
int fun(int *a,int n,int m)
{
    int i = 0 ;
    for(i=0;i<n;i++)
        if(*(a+i) == m)
            return i+1;
    return 0;
}
int main()
{
    int a[1000];
    int n,i,m;
    scanf("%d",&n);
    for(i=0;i<n;i++)
       scanf("%d",&a[i]);
    scanf("%d",&m);
    printf("%d",fun(a,n,m));
    return 0;
}
不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^