Nocrossnocrown
Nocrossnocrown
2019-03-24 11:39
采纳率: 92.9%
浏览 485

指针查找数组中的数,只能输出not found,求大神指点

输入x控制数组长度,查找数组中是否有n

#include <stdio.h>
int main()
{
   int i,a[50],x,*p,n,t=1;
   p=a;
   scanf("%d",&x);
   for(i=0;i<x;i++)
   {
       scanf("%d",p++);
   }
   scanf("%d",&n);
   for(i=0;i<x;i++,p++)
   {
       if(*p==n)
       {
           printf("%d",i);
           t=0;
           break;
       }
   }
   if(t==1)
   {
       printf("not found");
   }
    return 0;
}


  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • qq_36383623
    莫之 2019-03-24 14:40
    已采纳

    因为在第一个循环中,指针p已经指向了数组的前x个数据的最后一个数据了,你如果想查找,需要将指针p重新指向数组a的首地址;所以,需要在第一个循环赋值完成后,加上p=a; //测试可用

    点赞 评论

相关推荐