int main()
{     
   int a=10, b=5, c, i, s[4], t[4], u=0;
    for (i=0; i<=4; i++)
{
    s[i] = i;
    t[i] =i;
} 
     printf("s:t\n");
     for (i=0; i<=4; i++)
     printf("%d:%d\n", s[i], t[i]);
     printf("u = %d\n", u);
     c=a+b;
     printf("c=%d",c);
}
In the above code why does s[4]'s value stored in c and t[4]'s value in s[0] and not anyplace else.How does the memory allocation occur when out of bound condition appears in c?
 
     
    