Hello All

There are 2 code snippets
Code:
main()
{
int a=3;
printf("%d \t%d\t %d",a);
}
TC Output 3 3 0
GCC Output 3 0 garbage
Code:
main()
{
long int a=3;
printf("%d \n%d\n %d",a);
}
Output 3 0 3
GCC Output 3 0 garbage

can anyone explain why this unintended behaviour if both the compilers.