hmm... interesting. so using that pattern in the directive is essentially the same as fgets() with the "stdin" input, except for not accommodating the null character, and dropping the \newline. otherwise, the amount of "safety" is the same.
i'm rethinking my kneejerk reactionary position against scanf().... it's definitely powerful, but still might be a little abstract for beginners.