>>826
なるほど!リターンキー押した時点で、改行文字まで取り込んでしまっているのだけど
scanfは一文字しかもって行ってくれないので改行文字が
バッファ?に残っているんですね。
ためしに、getchar()でとりだしてバッファから消した文字をprintf
したら一行改行されていました。納得です。

>>827
文字数制限できるfgetsでリターンキーの改行文字もふくめ読み込んでしまった後に
sscanfでそれを料理するという感じなのでしょうか。
今後はこの組み合わせで行きたいと思います。

>>828-829
これは入力チェックにつかえるわけですよね。「英大文字でない場合」という
のは正規表現というので、実現するんでしょうか。
気持ち的には
if(c != [A-Z]) 的な???ものと予想しますが、「char型の変数」と「英大文字ではない
という表現」をどう結びつければ見当もつきません。。。

この辺は全然わからないですが避けては通れないのでがんばりたいと
思います。

皆様ご教示大変に助かりました。僅かですが前進できたような気がします。
ありがとうございました。