This book introduces computer programming concepts, taking C language as the medium. It emphasises the foundations, basic principles and concepts of computer programming. Beginning with very elementary concepts related to computer fundamentals and operating system, students are presented with detailed discussions on a variety of programming constructs and features of C language. Various concepts are discussed in different chapters providing detailed description of the topics. No prior knowledge of computers and the programming language is needed.