Ta certo o que o PedroCunha falou, você ta criando a condução errada. Quando você coloca i>3 ele não inicia o for já que i nunca foi maior que 3 já que foi inicializado com 0 e no fim ele mostra 0 já que ele da um printf no x que também é 0. Se inverter o sinal o programa deve rodar normalmente.