用C语言写一个在linux终端固定位置输出百分比,小数点保留两位
时间: 2023-12-14 15:35:51 浏览: 83
请帮小明同学设计一个程序,输入上次考试成绩(int)和本次考试成绩(int),然后输出成绩提高的百分比,保留两位小数位
您可以使用以下代码实现:
```c
#include <stdio.h>
#include <unistd.h>
int main() {
int i;
double percentage;
for (i = 0; i <= 100; i++) {
percentage = (double)i / 100;
printf("\rProgress: %.2f%%", percentage * 100);
fflush(stdout);
usleep(100000); // 100ms delay
}
return 0;
}
```
这个程序会在终端中输出一个百分比进度条,从0%到100%,小数点保留两位。每次更新进度时,它会将光标移动到行首(`\r`),然后输出新的进度百分比。`fflush(stdout)`可以确保输出被立即刷新到终端上,而不是缓存在内存中。`usleep(100000)`可以让程序等待100毫秒,以便您可以看到进度条的变化。
阅读全文