在输出某数列的值等于零的个数的问题中

问题遇到的现象和发生背景

无报错,但输不出来

问题相关代码,请勿粘贴截图

#include<stdio.h>
int F(int n)
{

if (n == 0 || n == 1)
    return 1;
else
{
    if (n == 2)
        return 0;
    else
        return  F(n - 1) -3*F(n-2)  + 2*F(n - 3);
}

}
main() {
int i, zero=0;

for (i = 1; i <= 10; i++)
{
    while(F(i)==0)
        zero += 1;
}
printf("%d", zero);

}

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

我并没有分析你的代码,但是代码的问题一定是你的while这里有问题,我想你应该用if然后分析自己的逻辑。

img