printf打印倒计时

1:示例

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <time.h>

int main()
{
        int i;

        printf("time: %d", 0);
        fflush(stdout);
        for (i=0; i<10; i++){
                sleep(1);
                printf("\b%d", i);
                fflush(stdout);
        }
        printf("\n");
}

printf("\b%d", i);

\b 表示退格键,把上次打印的信息删除一个字符。 再输入%d的值

2:fflush(stdout)

头文件:#include<stdio.h> 定义函数:int fflush(FILE * stream);

函数说明:fflush()会强迫将缓冲区内的数据写回参数stream指定的文件中,如果参数stream为NULL,fflush()会将所有打开的文件数据更新。
返回值:成功返回0,失败返回EOF,错误代码存于errno中。
fflush()也可用于标准输入(stdin)和标准输出(stdout),用来清空标准输入输出缓冲区。 stdin是standard
input的缩写,即标准输入,一般是指键盘;标准输入缓冲区即是用来暂存从键盘输入的内容的缓冲区。stdout是standard output 的缩写,即标准输出,一般是指显示器;标准输出缓冲区即是用来暂存将要显示的内容的缓冲区。

printf 这样的函数不是直接打印到屏幕上的,而是先放在一个缓冲区中(stdout)中。如果收到了一个换行符,就会把这个缓冲区的内容打印到屏幕上,并清空。而 fflush 的作用就是直接把缓冲区的内容打印到屏幕上,并清空缓冲区。不必等换行符。

普中51倒计时C语言程序可以使用C语言的时间函数和循环语句来实现。具体步骤如下: 1. 引入头文件:在程序开头引入<time.h>头文件,以便使用时间函数。 2. 初始化计时器:使用time_t类型的变量start_time保存程序开始运行时的时间,通过调用time(NULL)函数获取当前时间并赋值给start_time。 3. 进入倒计时循环:设置一个变量count并初始化为51,使用while循环,当count大于等于0时执行循环体。 4. 打印倒计时时间:在循环体内使用printf函数输出当前倒计时时间,即count的值。 5. 更新倒计时时间:在循环体内使用time(NULL)函数获取当前时间的值,并通过减去start_time的值得出已经过去的秒数。将已经过去的秒数除以1并取整,再减去当前倒计时的秒数51,即可得到经过的秒数。 6. 更新count的值:通过count初始值51再减去经过的秒数得到新的count的值。 7. 调整程序运行速度:为了能够看到倒计时效果,在每次循环结束后使用sleep函数暂停程序的运行一秒钟。 8. 循环结束后的处理:当count小于0时,跳出循环体,输出倒计时结束的提示。 下面是一个简单的实现示例: ```c #include <stdio.h> #include <time.h> int main() { time_t start_time, current_time; int count = 51; start_time = time(NULL); while (count >= 0) { printf("倒计时:%d\n", count); current_time = time(NULL); count = 51 - ((int)current_time - (int)start_time); sleep(1); } printf("倒计时结束!\n"); return 0; } ``` 以上就是一个简单的普中51倒计时C语言程序的实现。通过循环和时间函数,可以实现每秒递减的倒计时效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值