我是C编程的新手。
我正在尝试通过我的教科书中的一个例子。
问题:
1:不能让随机数发生器暂停一秒钟 insert printf();在我不应该的地方。
2:不能让程序暂停1秒钟,然后删除随机序列。我尝试过使用printf(\ r),但它只删除了整个序列而没有暂停1秒钟。
帮助表示赞赏。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(void)
{
time_t Start_Of_Seq = (time(NULL));
time_t Now = 0;
Now = clock();
srand((unsigned int)Start_Of_Seq);
for(int i = 1; i <= 5; i++)
{
printf("%d",rand()% 10);
}
printf("\n"); //This shouldn't be here.
for(; clock() - Now < CLOCKS_PER_SEC;);
printf("Testing the to see if there is a pause\n");
}
答案 0 :(得分:1)
printf
函数将所有内容输出到缓冲区。实际上,缓冲区仅在换行后打印。尝试fflush(stdout);
立即打印缓冲区内容。
此外,如果您使用Linux或其他类Unix系统,暂停时会有一个系统调用sleep
。尝试使用man 3 sleep
命令查看更多信息。