2 daxiazaiwusi daxiazaiwusi 于 2016.03.05 21:24 提问

查找数组的算法,哪里错了

#include

int* search(int *p, int n, int x)
{
if (n = 1) return *p == x ? p : NULL;
int *i = search(p, n / 2, x);
if (i) return i;
i = search(&p[n / 2],n-n/2, x);
if (i) return i; else return NULL;
}
int main()
{
int a[] ={1,4,10,17,20,23,51};
int *n = search(&a[0], 7, 10);
printf("%d", *n);
return 0;
}

1个回答

caozhy
caozhy   Ds   Rxr 2016.03.05 21:26
已采纳

if (n = 1)
->
if (n == 1)

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!