如何删除随机数序列

时间:2017-01-07 13:15:42

标签: c

我是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");
}

1 个答案:

答案 0 :(得分:1)

printf函数将所有内容输出到缓冲区。实际上,缓冲区仅在换行后打印。尝试fflush(stdout);立即打印缓冲区内容。

此外,如果您使用Linux或其他类Unix系统,暂停时会有一个系统调用sleep。尝试使用man 3 sleep命令查看更多信息。