“Procedural C++ for Science and Engineering” is an introductory programming text on the procedural C++. The need for another book on C++, when the market is already flooded with books on this great programming language, is due to a strong desire for a programming text which emphasizes to a greater extent -- than most similar books do -- some of the capabilities of the language while serving as a step-by-step instructional guide for students and for self-taught programmers. The book lays a solid foundation for disciplined programming design and implementation not only in C++ but also in other programming languages. For years, I have applied the same learning approach and the programming methods that are featured in this book in teaching programming in languages that include C, Python, Perl, PHP, and Java. This book encourages and embraces programming-instruction methodology that embodies the following features: a) An early introduction of the relationship that exists between the program components and the hardware subsystems of the computer system on which the program runs and code designs which reflect that relationship. b) Availability in the language of all numeric data formats -- binary, octal, decimal, and hexadecimal – and importance of choice of appropriate formats for given applications. c) Utilization of bit-wise operations including those which require extractions of bit-fields (e.g. bit flags, and bit masks) required in certain applications. d) Choice of bit-wise operations for some arithmetic operations for certain scientific and mathematical applications; for example, the fast left-shift bit-wise operation as opposed to the slow conventional multiplication or the speedy and more efficient right-shift bit-wise operation instead of the slow conventional division. e) Design of program modules directly from algorithm steps each of which capable of performing one and only one task, and presenting some of those modules as functions in the final C++ programs. (Of course, the result being that each function can/should perform one and only one operation.) f) Importance of choice of identifier names which are always descriptive; for example, nouns for value-returning functions and verbs for non-value-returning (or void) functions. g) Demonstration of covered-programming concepts and the syntactic features of C++ with full programming examples – as opposed to program fragments – the examples ready to be compiled and run.