打印一个数字,然后将其擦除,并在其位置打印另一个数字



我正在制作一个简单的轮盘游戏,我想实现一个轮盘旋转代码,所以就像在我的终端中一样,我会有这样的旋转:25,然后旋转后的数字会改变,所以它会擦除25,然后是旋转:14,然后旋转:35,最终停止。我所能做的就是让它看起来像这样:

Spinning: 24
Spinning: 34
Spinning: 2
Spinning: x...
etc..

基本上它只是随机数。我只是好奇,是否有可能摆脱这种Spinning:x垃圾邮件,让它成为一个Spinning:x,x在一个地方不断变化。如果我使用printf("Spinning: %d", rand()%36+1);,那么printf("Spinning: %d, rand()36%+1),它只会相互叠加,但如果有意义的话,我希望我的数字更改只在一个地方更改。

在许多控制台(如果不是大多数的话(上,r(回车(字符将把光标设置到当前行的开头。因此,在这种情况下,将该字符添加到输出的开头将起作用:

printf("rSpinning: %d    ", rand()%36+1);

我还在末尾添加了一些空格,以防"新"数字比"旧"数字短。


关于名称的起源;Carriage Return;维基百科有一篇好文章。