C语言,vs2010编译运行问题

代码块中有两段相似的代码,为什么第二块可以正常运行,第一块不行

#include <stdio.h>
int main()
{
    int i,j,hang,lie,max;
    int a[3][4]={1,2,3,4,6,7,8,9,-10,10,-5,2};
    hang=0;
    lie=0;
    max=a[0][0];
    for(i=0;i<3;i++)
    {
        for(j=0;i<4;j++)
        {
            if(a[i][j]>max)
            {
                hang=i;
                lie=j;
                max=a[i][j];
            }
        }

    }
    printf("最大为%d,位于:第%d行,第%d列\n",max,hang,lie);
}
/*int main()
{
    int i,j,hang,lie,max;
    int a[3][4]={1,2,3,4,6,7,8,9,-10,10,-5,2};
    hang=0;
    lie=0;
    max=a[0][0];
    for(i=0;i<3;i++)
    {
        for(j=0;j<4;j++)
    {
        if(a[i][j]>max)
    {
        hang=i;
    lie=j;
    max=a[i][j];

    }
    }
    }
    printf("最大为%d,位于:第%d行,第%d列\n",max,hang,lie);
}*/
for(j=0;i<4;j++)
这里j<4不是i