#include <windows.h>
#include <stdio.h>
static const char *ponit[]= {"\x20\x20", "\xA8\x87", "\xA8\x86", "\xA8\x84", "\xA8\x83", "\xA8\x80"}; // ▏▎▍▊█
//int per 百分比范围(0 ~ 100)
void progress_bar(int per)
{
int i=0;
int num0=0;
printf("\r [");
num0 = (100-per)/5;
i = per;
while(i>5)
{
printf("%s", ponit[5]);
i -= 5;
}
if(i)
{
printf("%s", ponit[i]);
}
for(i=0; i<num0; i++)
{
printf("%s", ponit[0]);
}
printf("] %2d%%", per);
if(per == 100)
{
printf("\n");
}
}
void process_bar_test(void)
{
int i = 0;
for(i=0; i<=100; i++)
{
progress_bar(i);
Sleep(100);
}
// set_console_color(COLOR_GREEN);
}
int main(int argc, char *argv[])
{
process_bar_test();
system("pause");
}