Is it only a random design choice or is there any specific reason that C supports row-major not column-major? I know that Fortran uses column major. So what is the reason(if any) behind these design choices?