项目中需要设计一个远程设备升级程序,程序优化时想在数字显示升级进度的同时用类似wget的进度条的形式显示升级进度,于是写了一个简单的数字+进度条显示升级进度的程序,以下为程序的核心部分,以达到抛砖引玉的效果。

/* The progress bar like this:

xx% [=======> ]

*/

int dlbytes_size = 1 + MAX (size_grouped_len, 11);

int progress_size = bp->width - (4 + 2 + dlbytes_size + 8 + 14);

/* The difference between the number of bytes used,

and the number of columns used. */

int bytes_cols_diff = 0;

if (progress_size < 5)

progress_size = 0;

/* "xx% " */

if (bp->total_length > 0)

{

int percentage = 100.0 * size / bp->total_length;

assert (percentage <= 100);

if (percentage < 100)

sprintf (p, "%2d%% ", percentage);

else

strcpy (p, "100%");

p += 4;

}

else

APPEND_LITERAL (" ");

/* The progress bar: "[====> ]" or "[++==> ]". */

if (progress_size && bp->total_length > 0)

{

/* Size of the initial portion. */

int insz = (double)bp->initial_length / bp->total_length * progress_size;

/* Size of the downloaded portion. */

int dlsz = (double)size / bp->total_length * progress_size;

char *begin;

int i;

assert (dlsz <= progress_size);

assert (insz <= dlsz);

*p++ = '[';

begin = p;

/* Print the initial portion of the download with '+' chars, the

rest with '=' and one '>'. */

for (i = 0; i < insz; i++)

*p++ = '+';

dlsz -= insz;

if (dlsz > 0)

{

for (i = 0; i < dlsz - 1; i++)

*p++ = '=';

*p++ = '>';

}

while (p - begin < progress_size)

*p++ = ' ';

*p++ = ']';

}

else if (progress_size)

{

/* If we can't draw a real progress bar, then at least show

*something* to the user. */

int ind = bp->tick % (progress_size * 2 - 6);

int i, pos;

/* Make the star move in two directions. */

if (ind < progress_size - 2)

pos = ind + 1;

else

pos = progress_size - (ind - progress_size + 5);

*p++ = '[';

for (i = 0; i < progress_size; i++)

{

if (i == pos - 1) *p++ = '';

else

*p++ = ' ';

}

*p++ = ']';

++bp->tick;

}

c语言电量百分比程序,C语言实现的百分比加进度条的显示程序相关推荐

  1. 创建自绘进度条,并在进度条上显示当前进度的百分比

    平台:VS2005: 资料参考:来源于网络: 内容介绍:创建自绘进度条,并在进度条上显示当前进度的百分比. 第一步:创建基于对话框的工程,在对话框中放置一个进度条控件, 把进度条控件的属性Smooth ...

  2. html的canvas显示数字,HTML5效果:Canvas 实现圆形进度条并显示数字百分比

    实现效果 1.首先创建html代码 2.创建canvas环境 var canvas = document.getElementById('canvas'), //获取canvas元素 context ...

  3. 微信小程序下载视频到相册(带进度条)

    微信小程序下载视频到相册,并带进度条 <button class="desc-note my-button u-font-32" @click="toUpload( ...

  4. 完成度百分比用计算机怎么算,excel表格以进度条显示百分比的教程

    在Excel中经常需要统计数据,有些有百分比项目的,如果以进度条方式显示百分比,数值大概是多少也都一目了然了,如果学会了这一做法,相信你的工作效率会提升得很快.接下来是学习啦小编为大家带来的excel ...

  5. html数字显示百分比,扣丁学堂html5 教程之Canvas实现圆形进度条并显示数字百分比效果...

    今天扣丁学堂html5培训小编和大家分享一下Canvas实现圆形进度条并显示数字百分比效果示例,对html5感兴趣的小伙伴或者是参加学习的小伙伴可以了解一下. Canvas实现圆形进度条并显示数字百分 ...

  6. android加载百分比功能,android进度条怎么显示百分比

    android布局文件里的ProgressBar长形进度条怎么自 在windows操作系统下Android studio按照如下步骤自动义ProgressBar长形进度条的样式. 首先创建一个andr ...

  7. python 进度条_Python小程序系列——动态进度条(1)

    Python动态进度条I 开始我们的第一个Python程序. 显示一个动态进度条,在同一个位置显示从1%到100% 源代码附上来: import sys #有关Python运行环境的变量和函数impo ...

  8. 微信小程序 MinUI 组件库系列之 progress 进度条组件

    MinUI 是基于微信小程序自定义组件特性开发而成的一套简洁.易用.高效的组件库,适用场景广,覆盖小程序原生框架.各种小程序组件主流框架等,并且提供了高效的命令行工具.MinUI 组件库包含了很多基础 ...

  9. 【微信小程序】简易音乐播放器,进度条拖拉、音乐的播放与暂停

    小程序简易音乐播放器实现 粗糙的页面设计: wxml部分: <view class="test"><view class="img">& ...

最新文章

  1. 迈向智慧化 物联网规模应用不断拓展
  2. 一步一步学Silverlight 2系列(34):使用Silverlight Streaming托管Silverlight应用程序_转载...
  3. 年终福利 | 京东虚拟平台团队问答专场
  4. JDBC(二)——使用IDEA连接数据库、数据库连接池
  5. .net core 中的经典设计模式的应用
  6. JavaScript的求模、取整、小数的取舍
  7. 程序人生:女程序员的求职奋斗史
  8. SpringBoot - 多Profile使用与切换
  9. Spring Security Oauth2 之密码模式
  10. feign 多个参数放对象_feign架构 原理解析
  11. java求1~20阶乘之和
  12. fedora14安装
  13. CentOS安装微软雅黑字体
  14. 《你要如何衡量你的人生》书籍读后感
  15. 内存颗粒位宽和容量_DDR4内存颗粒--美光篇
  16. bugku~图穷匕见
  17. 中国恐慌指数VIX(基于沪深300的)
  18. 多版本opencv管理 --pkg-config
  19. Python爬虫框架Scrapy豌豆荚应用市场爬虫
  20. Excel如何在整个工作簿中批量替换指定数据

热门文章

  1. 基于java的抑郁症患者发现与治疗系统
  2. c和e语言,e-c c-e(英汉语言对比).ppt
  3. html按钮设置动作,ppt设置动作按钮在哪 PPT中怎么添加动作按钮?
  4. u-boot-2010.03分析(二)
  5. 视频抽帧及将图片合成视频
  6. 牛客网[编程题] DNA合成(Java实现)
  7. 宏任务和微任务的总结(js队列执行顺序)+ 一点琐事(善待自己)
  8. c语言 单词变复数_DEV-C++中编写了一段C程序,其中设置了用文件进行... 请编一个程序,可以将英语规则名词由单数变成复数......
  9. 向HTML中添加节点的几种方法
  10. 用PS给图标添加外发光效果