Source: http://alumni.cs.ucr.edu/~lyan/c interviewquestions.pdf