主要内容 #
示例程序 #
请运行,并描述一下你看到的现象。
#include < cstdio >
int main()
{
printf("\r%s", "白日依山尽");
printf("\r%s", "黄河入海流");
printf("\r%s", "欲穷千里目");
printf("\r%s", "更上一层楼");
return 0;
}
最后应该只有一行输出:更上一层楼
解释 #

\r 是将后续的输出位置,移动到行首。
请你们运行验证一下,最终结果是否为 123de
习题 #
【题目描述】
模拟输出文件的下载进度。假设每 100 毫秒,进度加一。
输出进度为整数,格式为右对齐,长度为 3 位。
【输出样例】
输出只能占据窗口第一行。当前的输出,应该覆盖上一次的输出结果。这是一个动态显示的过程。
|| 0%
|=>| 10%
|==>| 20%
|==========|100%
/* 请完成后,查看示例程序 */
示例程序:
#include < cstdio >
#include < Windows.h >
int main()
{
printf("||%3d%%", 0);
for(int i=0; i < 100; ++i)
{
Sleep(100);
if(i%10 == 0)
{
printf("\r|");
for(int k(0); k < i/10; ++k)
printf("=");
printf(">|%3d%%", i);
}
}
printf("\r|==========|%3d%%", 100);
return 0;
}