我想使用递归找到数组的一个元素。该函数接受一个数组和目标值。递归函数检查它是否是给定数组的元素。但不幸的是,我无法在其上设置此代码。该函数始终返回 '1' 。我在哪里犯错?
#include <stdio.h>
int isElement(int *a, int target) ;
int main()
{
int a[] = {3,5,6,4,2,32,15} ;
int target = 12 ,res ;
res = isElement( a, target) ;
if(res==1)
printf("its an element of the array\n");
if(res==0)
printf("its not an element of the array\n");
return 0 ;
}
int isElement(int *a, int target)
{
int son=0 ;
printf("array = %d\n",a[0] );
if(a[1] == '\0')
son = 0 ;
else if(target == a[0])
son = 1 ;
else
son = isElement(&a[1] ,target);
return son ;
}