求助 我用C语言 实现0-1背包问题 不知道是什么错误就有错,请指教
代码是:
#include<stdio.h>
#define max 101
int F(int i,int j)
{
int v[max],w[max],n,c;
for(int i=n;i>=1;i--){
for(int j=0;j<=c;j++){
if(i==n)
return 0;
else return F(i+1,j);
if(j>=v[i])
return F(i+1,j-v[i])+w[i];
}
}
int main()
{
int n,c,v[max],w[max];
printf("请输入背包的容量c: ");
scanf("%d",&c);
printf("请输入物品的种类n: ");
scanf("%d",&n);
printf("请输入物体的体积和重量: ");
for(i=0;i<n;i++)
{
scanf("%d%d",&v[i],&w[i]);
}
printf("%d",F(i,j));
}
错误是:
\beibaowenti.cpp||In function 'int F(int, int)':|
\beibaowenti.cpp|17|error: a function-definition is not allowed here before '{' token|
\beibaowenti.cpp|30|error: expected '}' at end of input|
||=== Build finished: 2 errors, 0 warnings ===|