Let's build this up piece by piece.
If you want an expression that returns true if the class roster is empty (regardless of the number of credits), you can write simply
return is_empty;
You _could_ write something more complicated, and a lot of beginning students tend to:
if (is_empty) {
return true;
} else {
return false;
}
But notice that the shorter
return is_empty;
returns true when is_empty is true and false when is_empty is false. Also, the if statement isn't technically in expression in many languages (I'm guessing you're studying C), so it likely wouldn't be a correct answer for how the question is posed anyway.
So what expression can we write that evaluates to true if the class is NOT empty. That's just
return !is_empty;
(We added the NOT symbol, !).
How about an expression that returns true if the number of course credits is 1 or 3? That's
return number_of_credits == 1 || number_of_credits == 3
Note the use of or (i.e. II). Okay, so now we're ready to write an expression that returns true if the class roster is not empty AND the class is one or three credits:
return !is_empty && (number_of_credits == 1 || number_of_credits == 3);
Note the addition of AND (&&) and the parentheses.