C语言选择题,答案为C,求解释,谢谢。

打印语句printf("sTUDEND\bT\rS");在屏幕上正确的输出形式是( ).
A、sTUDENDS
B、TUDENTS
C、STUDENT
D、sTUDENTS

第1个回答  2017-10-18
答案是C没问题——先打出sTUDEND,然后\b退后1位把光标移到D下面,再打T把D覆盖了,再向后打印\r把光标移到这一行的开头s下面,最后输出S把s覆盖了……
第2个回答  2012-05-11
我试了试,的确是S,不过你printf("sTUDEND\bT\rS\n");在他后面加一个换行就好了,因为打印输出后面有个“请按任意键继续...”当你的\r执行后跳到本行的开头后输出\r后面的内容然后就直接输出那几个字覆盖了后面的内容所以输出不了,明白否?
第3个回答  推荐于2017-10-18
\b=backspace
\r是回车,而鉴于输出只有一行,所以只能返回本行的行首,并用'S'覆盖's'本回答被提问者采纳
第4个回答  2012-05-11
\b:退格,将当前位置移到前一列为:sTUDENT
\r:回车,将当前位置移到本行开头
因为输出只有一行,所以返回本行的行首,并用'S'覆盖's' 。即为STUDENT
第5个回答  2012-05-11
\b查资料是退格就是删除一个,然后输出T“\r“书上写是回车,然后我运行了一下,使显示了一个S