????????闲来无事就想写一个进度条的代码,写了多次,效果一直不是很好,不过今天终于完善了,自我感觉效果还可以。下面是效果图:
图1 代码执行中
?图2 代码执行完成
附上进度条函数源代码:
//x是当前运行的次数,total是总共需要运行的次数
void progress_bar(int x, int total)
{
double percent = 100*(double(x)/double(total));
int i;
static int count = 0;
int y = int(percent)/10;
if(y*10 == 100)
{
count = 4;
cout<<"\r★★★ 运行完成 ★★★ ";
}
else
printf("\r当前进度:%.2f %% ", percent);
cout<<"[";
for(i = 0; i < y; i++)
cout<<"█";
for(i = 0; i < 10-y; i++)
if(i == 0)
cout<<"->";
else
cout<<"--";
cout<<"]";
count++;
if(count == 4)
count = 1;
switch (count)//最右侧动画效果
{
case 1: cout<<" —";
break;
case 2: cout<<" /";
break;
case 3: cout<<" \\";
break;
case 5: cout<<" √";
default:
break;
}
}
嘿嘿,好用的话记得点赞收藏哦!
?
?
?
|