Answer from cs61c-ar (Albert Chung 15826273) for Question 1 The C preprocessor is a first step before compilation, where it checks for #include and #define statements in the C course code, and replaces them with the appropriate text. Its input and output are the text in the source code. If it were a separate step in Figure 3.21, it would be placed before the actual compilation, so the 1st step.