【】小疑点,如何没有输出

【在线等】小问题,怎么没有输出#includestdio.hint f(int i){int sum,n,sum1,sum2if(i 0){sum 0prin

【在线等】小问题,怎么没有输出


#include<stdio.h>

int f(int i)
{

int sum,n,sum1,sum2;
if(i = 0)
{
    sum = 0;
printf("%d",sum);
}
else
{
for(n = 1;n <= i;n++)
{
sum1 *= n;
printf("%d",sum1);
sum2 *= 2;
printf("%d",sum2);
    sum = sum1 * sum2;
printf("%d",sum);
}
}
return sum;

}

void main()
{
int i,n,m;

for(n = 1;n<4;n++)
{
printf("enter the number");
scanf("%d",&i);

f(i)
m = f(i);
printf("%d",m);
}

}

这个问题出在哪??是函数没有调用吗?怎么没有输出啊~~~~
[解决办法]

#include<stdio.h>

int f(int i)
{
int sum,n,sum1,sum2;
if(i == 0)//这里是==吧。。
{
    sum = 0;
printf("%d",sum);
}
else
{
sum1 = sum2 = 1;//sum1, sum2没有初始化。。
for(n = 1;n <= i;n++)
{
sum1 *= n;
printf("%d\n",sum1);
sum2 *= 2;
printf("%d\n",sum2);
    sum = sum1 * sum2;
printf("%d\n",sum);
}
}
return sum;
}

void main()
{
int i,n,m;

for(n = 1;n<4;n++)
{
printf("enter the number");
scanf("%d",&i);

//f(i)
m = f(i);
printf("%d",m);
}
}