我是c语言新手,编了关于背包问题的代码如下:
int a[100];
int do (s,n)
int s,n;
{if (s=0) return(1);
 else {if (  (s<0)||( (s>0)&(n<0) )  ) return(0);
       else {if (do(s-a[n],n-1))
    {printf ("%d",a[n]);
     return (1);}}
     else return (do(s,n-1));}
      }
main ()
{int j,k,i;
 scanf ("%d %d",&j,&d);
 for (i=0;i<=k;i++)
     scanf ("%d",&a[i]);
 if (do(j,k)=0)
    printf ("no answer");
}
用turbo c 2.0编译总部成功,为什么??