1) D, C, C, D, D 2)a) 3 b) gpa(0,1,"C") -- there are many combos that work here c) vector animal_types(42); d) int to_hit = rand()%20 + 1; e) sqrt, pow, sin, cos, tan, round, floor, ... f) It is the type (the kind of thing) that the function will give back to its caller when it completes. It is used however the caller wishes (assigned to vaariable, output, used in an equation). g) Do the book! Practice a lot! Start projects early. 3) //the key here is to skip every other and push_back vector second; for(unsigned i = 0; i < first.size(); i = i + 2) { second.push_back(first.at(i)); } 4) string getCatchyPass ( vector word_parts ) { int r1 = rand() % word_parts.size(); int r2 = rand() % word_parts.size(); string string1 = word_parts.at(r1); string string2 = word_parts.at(r2); string result = string1 + string2; return result; }