Lets do this by eliminating possibilities. We know exactly one of them is a Knight, so lets see what happens if we assume each in turn is a Knight.
Assume Bob is a Knight
Therefore, his statement must be true. But since Bob is a Knight, he cannot be a Normal. Thus, the statement "both Chris and I are Normals" is false. Similarly, "both Alice and I are Normals" is also false. Thus the entire statement is false, which is a contradiction.
Thus, Bob cannot be a knight.
Assume Chris is a Knight
Chris' statement must be true since he is a Knight. We know Bob is not a Knight since there is exactly one, so he is either a normal or a Knave.
If Bob is a Normal, then both Chris and Bob are not Knaves, thus, by his statement, all of Alice, Bob, and Chris must be Normals. This is a contradiction since Chris cannot be both a Normal and a Knight. Thus we know Bob is not a Normal and must be a Knave instead.
Since Bob is a Knave, his statement must be false.
This use of "and or" is slightly ambiguous, but I take it to be logically equivalent to simply two clauses connected by "or". In this interpretation (and all other interpretations I can think of) since both clauses are false (Since Bob is not a Normal), the entire statement is false, which is what it must be since Bob is a Knave.
Thus, Chris being a Knight, Bob a Knave, and Alice being either a Normal or a Knave is consistent with the statements.
Assume Alice is a Knight
Unfortunately, this gives us the least information. Chris and Bob must be Knaves, Normals, or a mixture of the two since they cannot be Knights (exactly one).
Lets say Chris is a Knave. Thus, his statement must be false. The only way to make it false is to make the first clause ("both Bob and I are not Knaves") true and the second clause ("all of Alice, Bob, and I are Normals") false. Unfortunately, since Chris is a Knave, there is no way to make the first clause false. Thus, Chris cannot be a Knave and must be a Normal.
Lets say Bob is a Knave. Thus, his statement must be false, so both clauses must be false. Therefore, one of Chris and Bob must not be normal, and one of Alice and Bob must not be Normal. Since Bob is a Knave, this holds, making his entire statement false, regardless of what Alice is.
If Bob was a Normal, then his statement is true, which is allowed.
All Solutions
The complete list of solutions is:
- Alice=Knight, Bob=Knave, Chris=Normal
- Alice=Knight, Bob=Normal, Chris=Normal
- Alice=Knave, Bob=Knave, Chris=Knight
- Alice=Normal, Bob=Knave, Chris=Knight