The book teaches a student to model a scientific problem and write a computer program in C language to solve that problem. To do that, the book first introduces the student to the basics of C language, dealing with all syntactical aspects, but without the pedantic content of a typical programming language manual. Then the book describes and discusses many algorithms commonly used in scientific applications (e.g. searching, graphs, statistics, equation solving, Monte Carlo methods etc.). This important book fills a gap in current available bibliography. There are many manuals for programming in C, but they never explain programming technicalities to solve a given problem. This book illustrates many relevant algorithms and shows how to translate them in a working computer program.