The second edition of Programming in C is designed to serve as an introductory text for students of Engineering, computer applications, and computer Science. It provides a thorough understanding of the fundamentals of C and its applications. Beginning with the Basic concepts of programming, the book gives an exhaustive coverage of arrays, strings, functions, pointers, and data structures. Separate chapters on linked lists and stacks, queues, and trees, with their implementation in C, have been provided to simplify the learning of complex concepts. Some advanced features of C such as memory models, command-line arguments, and bitwise operators have also been included. Case studies demonstrating the use of C in solving mathematical as well as real-life problems have also been presented. This edition also highlights C99 features wherever relevant in the text. Students will find this book an excellent companion for self-study owing to its easy-to-understand approach with plenty of programs complete with source codes, sample outputs, and test cases.