Quiz submission record for quiz2-2-1 at Wed Jun 30 00:56:53 2004: Your Answer for Question 1: No, C does not need all of them. Goto can be dropped, as can while and do while (they can both be rewritten using for). I think that the C designers included all of these so that the programmer could have different options of how they wanted to have their code represented in such a way that it's most logical and easy to decipher by someone reading it. Your Answer for Question 2: if/else, switch, for, while, do, ?:, and most any logical operator can decide which operations get executed (such as <=, !, >=, ==, etc) MIPS has beq, bne. slt, slti, sltu, and sltiu are also used to help make the decisions. The designers of MIPS might not have included more instructions for making decisions because that would have involved implementing it in hardware. It is simpler and more cost-effective to have just a few easy instructions hardwired onto the chip and then let software handle the rest. Your Answer for Question 3: I thought the most interesting part of the reading was learning how to convert switch statements in C into MIPS instructions. Your unique submission ID is quiz2-2-1-cs61c-ep-1088582213-14.