为什么for循环还是执行了三次?我怎么感觉第二次i=6 了不应该跳出循环吗

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果
#include <stdio.h>
int Square (int i);
int main()
{
    int i = 0;
    i = Square (i);
    for (; i< 3; i++)
    {
        static int i= 1;
        i += Square(i);
        printf("%d", i);
    }
    printf("%d\n", i);
    return 0;
}


int Square (int i)
{
    return i*i;
}


static int i = 1;
i += Square(i);
printf("%d ", i);
这三行的i不是for循环的i,是局部静态变量i,所以for循环的i还是1,2,3