1) The answer is 2). The variable oneBoard is of the Board structure type and can have the dot operator applied to access its smooth surfaces. The first answer is wrong since you cannot apply the dot operator directly to the structure type Board. The third answer is not correct, because there is no smoothSurfaces variable. 2) The answer is 2). First, we need to access the Dimensions of oneBoard, which is the Size structure type. Then, access the Width field of dimensions to access the Width. The first answer is wrong because oneBoard does not have a field named Size, but a field of type Size. The third answer is wrong because the field Width is part of Dimensions, not directly part of oneBoard. 3) The answer is 2). First, the Lumber array is indexed, and then the dot operator is used to access the kind of wood. The first answer doesn't work because WoodKind is the enumerated type name but not the field name. The third answer doesn't work because WoodKind is an enumerated type name. 4) The answer is 1). CEDAR (not a string) is the enumerated type value being looked for. Enumerated type values are not strings, but are like named constants you use throughout your program. 5) The answer is 5). Both 1) and 2) create and initialize the structure variable gradDay. Answer 3) appears to be trying to use the structure type as a variable, which is not allowed. 6) The answer is 6). You can assign one structure variable to another and you can pass structures by value. However, you cannot compare two structures with the equality (==) sign. 7) The answer is 3). You cannot increment a structure variable or index a structure variable. You can compare non-structure type fields in a structure variable though, as is done in answer 3. 8) The answer is 2). The first answer is an assignment, which is syntactically valid, but does not compare the two fields. The third answer uses the index notation, which is only valid for arrays. 9) The answer is 8). You have to write a function to compare two structure variables. 10) The answer is 2). You can print out a single field in a structure variable, if that field is not an array or structure itself. 11) The answer is 2). 12) The answer is 5), primarily because pass by constant reference uses the same memory of the variable passed to the function. Answer 3) is not valid because the function call syntax is the same for pass by value and pass by constant reference. 13) The answer is 7). The only difference between pass by reference and pass by constant reference is that functions can make changes to pass by reference parameters. 14) The answer is 4). 15) The answer is 1). Clearly the if statement is checking to see if the index is negative (< 0). 16) The answer is 1). If the index does not fall into one of the other situations, it must be out of the bounds of teh array. 17) The answer is 1). You can copy one structure to another, even if they contain arrays. 18) The answer is 2). When you index a field, it acts just like any other variable of the field type. 19) The answer is 5). 20) The answer is 3).