Quote Originally Posted by kindlychung View Post
But I guess "!='n'" and "=='y'" are essentially the same thing, aka the condition of the loop, why are the effects so different?
To you they are the same, because you're a good user and if presented with a y/n prompt, you enter either y or n. However there are tons of stupid users out there and they will enter "no" or "yes" or "blah".
What you want to make sure is that a user actually enters 'y' and that anything else is invalid. so you'd want to check that "== 'y'" (and if you allow a default yes check for '\n' as well).
As a rule of thumb, assume that your user doesn't know how your software works and assume they will do the dumbest things possible. Once you've anticipated the majority of these issues, your program will be pretty safe.

QuantumPete