说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

VB应用程序中打印条形码的两种方法

HTML文档下载 WORD文档下载 PDF文档下载
VB应用程序中打印条形码的两种方法
(作者:四川 李佑民 )


  条形码作为一种机器可识别的图形,它能快速、准确地标识某种产品或商品,在许多数据库应用中起作很重要的作用,如超市收银、车站售票等场合。当某件物品上带有的条形码被条码扫描器正确解读后,将会得到该物品的唯一标识字符串,通过检索数据库我们就可以很容易知道它的一些其它属性并作相应处理。虽然在Internet上能找到许多免费和不免费的条形码打印控件,但是这些控件除了使用不方便外,还有一个最大的缺点:它们的打印输出不能和我们的程序共存在一个打印页面上,比如说在一个过程中,我们先向系统 Printer 中输出一些内容,然后再调用控件的条形码打印方法,最后打印的结果为两页!,如果现在我们要处理一张车票,上面不仅要打印条形码,还要有终点站和票价等信息,那么控件就变得不可用。对程序员来说,可能还是希望能了解条形码打印的原理,本文提出两种打印方法与同行们探讨。



一、直接利用有条形码打印功能的打印机

  有许多打印机能够直接打印条形码,但在 VB 中,我们在DOS时代熟悉的LPRINT语句已经不能再使用了,打印操作被Windows的Spool系统完全接管,输出是以“页”为单位,所有的打印输出都被Windows转换为图形发送给打印驱动程序。而要使打印机打印条形码就必须将对应的ESC序列直接发送给它,因此我们就要想办法避开Windows的Spool系统,也就是说再程序中不能使用Printer对象和Printers集合处理打印输出,在VB中要将ESC指令直接发送给打印机至少有三种方法,前两种方法是调用Windows API 函数:Escape()和SpoolFile(),第三种是最容易的方法:打开打印机端口进行二进制存取,我们主要考虑这种方法。

  即使在Windows时代,”LPT1:”和”PRN”仍然是可用的,下面我们先作一个试验:打开一个DOS窗口,在提示符下输入COPY CON LPT1:回车,然后随便输入一些字符,最后按F6键,打印机就开始工作了,它将打印出你输入的那些字符!下面的代码演示了直接将指令和字符发送给打印机:

Private Sub Command1_Click()

  Dim strOut As String

  StrOut = “这是直接发送到打印机端口的字符串”

  ‘ 打开打印机端口,其中的”LPT1:”可能需要根据你的打印机设置而改变

  Open “LPT1:” For Binary Access Write As #1

  ‘ 发送给打印机,注意语句的最后一个参数必须是变量

    Put #1, ,strOut

    ‘ 关闭打印机端口

    Close #1

End Sub

  各种打印机打印条形码的指令可能不同,比如将上面的变量 strOut赋值为:

  strOut = Chr(28) & “P” & Chr(5) & Chr(2) & Chr(3) & Chr(3) & Chr(6) & “012345”

  将在 AR2400 打印机上打印出内容为”012345”的 CODE39 格式的条形码。具体的打印控制指令请参考打印机手册。

  用这种方法的缺点:一是过份依赖打印机本身,而有条形码打印功能的打印机通常要比普通打印机昂贵,这会使构造应用系统不够经济;二是所有的打印输出都必须你自己处理,比如打印定位就很浪费时间。



二、利用画图方式输出到普通打印机

  条形码的编码规则不外乎是通过线条和线条间间隙的宽窄不同来表示二进制的1和0,只要我们了解了条形码的编码规则,完全可以用画图的方式在普通打印机上得到可以接受的效果。下面我们就使用最普遍的CODE39码进行讨论。

  CODE39码的编码规则是:

1、 每五条线表示一个字符;

2、 粗线表示1,细线表示0;

3、 线条间的间隙宽的表示1,窄的表示0;

4、 五条线加上它们之间的四条间隙就是九位二进制编码,而且这九位中必定有三位是1,所以称为39码;

5、 条形码的首尾各一个*标识开始和结束

  在我们的程序中,给常用的字符都进行编码,解读时先取线条粗细,再取间隙宽窄,如:



  上图中的字符*就可以解读为 001101000,字符3解读为 110000100

  下面就是我们给出的子过程:

注释: 将字符串 strBarCode 对应的条形码输出到缺省打印机

Private Sub PrintBarCode( _

  ByVal strBarCode As String, _

  Optional ByVal intXPos As Integer = 0, _

  Optional ByVal intYPos As Integer = 0, _

  Optional ByVal intPrintHeight As Integer = 10, _

  Optional ByVal bolPrintText As Boolean = True _

)

注释: 参数说明:

注释: strBarCode    - 要打印的条形码字符串

注释: intXPos, intYPos - 打印条形码的左上角坐标(缺省为(0,0),坐标刻度为:毫米)

注释: intHeight     - 打印高度(缺省为一厘米,坐标刻度为:毫米)

注释: bolPrintText   - 是否打印人工识别字符(缺省为true)



注释: "0"-"9","A-Z","-","%","$"和"*" 的条码编码格式,总共 40 个字符

Static strBarTable(39) As String

注释: 初始化条码编码格式表

  strBarTable(0) = "001100100"   注释: 0

  strBarTable(1) = "100010100"   注释: 1

  strBarTable(2) = "010010100"   注释: 2

  strBarTable(3) = "110000100"   注释: 3

  strBarTable(4) = "001010100"   注释: 4

  strBarTable(5) = "101000100"   注释: 5

  strBarTable(6) = "011000100"   注释: 6

  strBarTable(7) = "000110100"   注释: 7

  strBarTable(8) = "100100100"   注释: 8

  strBarTable(9) = "010100100"   注释: 9

  strBarTable(10) = "100010010"  注释: A

  strBarTable(11) = "010010010"  注释: B

  strBarTable(12) = "110000010"  注释: C

  strBarTable(13) = "001010010"  注释: D

  strBarTable(14) = "101000010"  注释: E

  strBarTable(15) = "011000010"  注释: F

  strBarTable(16) = "000110010"  注释: G

  strBarTable(17) = "100100010"  注释: H

  strBarTable(18) = "010100010"  注释: I

  strBarTable(19) = "001100010"  注释: J

  strBarTable(20) = "100010001"  注释: K

  strBarTable(21) = "010010001"  注释: L

  strBarTable(22) = "110000001"  注释: M

  strBarTable(23) = "001010001"  注释: N

  strBarTable(24) = "101000001"  注释: O

  strBarTable(25) = "011000001"  注释: P

  strBarTable(26) = "000110001"  注释: Q

  strBarTable(27) = "100100001"  注释: R

  strBarTable(28) = "010100001"  注释: S

  strBarTable(29) = "001100001"  注释: T

  strBarTable(30) = "100011000"  注释: U

  strBarTable(31) = "010011000"  注释: V

  strBarTable(32) = "110001000"  注释: W

  strBarTable(33) = "001011000"  注释: X

  strBarTable(34) = "101001000"  注释: Y

  strBarTable(35) = "011001000"  注释: Z

  strBarTable(36) = "000111000"  注释: -

  strBarTable(37) = "100101000"  注释: %

  strBarTable(38) = "010101000"  注释: $

  strBarTable(39) = "001101000"  注释: *



  If strBarCode = "" Then Exit Sub 注释: 不打印空串



  注释: 保存打印机 ScaleMode

  Dim intOldScaleMode As ScaleModeConstants

  intOldScaleMode = Printer.ScaleMode

  注释: 保存打印机 DrawWidth

  Dim intOldDrawWidth As Integer

  intOldDrawWidth = Printer.DrawWidth

  注释: 保存打印机 Font

  Dim fntOldFont As StdFont

  Set fntOldFont = Printer.Font

  

  Printer.ScaleMode = vbTwips 注释: 设置打印用的坐标刻度为缇(twip=1)

  Printer.DrawWidth = 1   注释: 线宽为 1

  Printer.FontName = "宋体" 注释: 打印在条码下方字符的字体和大小

  Printer.FontSize = 10

  

  Dim strBC As String     注释: 要打印的条码字符串

  strBC = Ucase(strBarCode)

  注释: 将以毫米表示的 X 坐标转换为以缇表示

  Dim x As Integer

  x = Printer.ScaleX(intXPos, vbMillimeters, vbTwips)

  注释: 将以毫米表示的 Y 坐标转换为以缇表示

  Dim y As Integer

  y = Printer.ScaleY(intYPos, vbMillimeters, vbTwips)

  注释: 将以毫米表示的高度转换为以缇表示

  Dim intHeight As Integer

  intHeight = Printer.ScaleY(intPrintHeight, vbMillimeters, vbTwips)

  

  注释: 是否在条形码下方打印人工识别字符

  If bolPrintText = True Then

    注释: 条码打印高度要减去下面的字符显示高度

    intHeight = intHeight - Printer.TextHeight(strBC)

  End If

  

  Const intWidthCU As Integer = 30 注释: 粗线和宽间隙宽度

  Const intWidthXI As Integer = 10 注释: 细线和窄间隙宽度

  Dim intIndex As Integer      注释: 当前处理的字符串索引

  Dim i As Integer, j As Integer, k As Integer  注释: 循环控制变量



  注释: 添加起始字符

  If Left(strBC, 1) <> "*" Then

    strBC = "*" & strBC

  End If

  注释: 添加结束字符

  If Right(strBC, 1) <> "*" Then

    strBC = strBC & "*"

  End If

  

  注释: 循环处理每个要显示的条码字符

  For i = 1 To Len(strBC)

    注释: 确定当前字符在 strBarTable 中的索引

    Select Case Mid(strBC, i, 1)

    Case "*"

      intIndex = 39

    Case "$"

      intIndex = 38

    Case "%"

      intIndex = 37

    Case "-"

      intIndex = 36

    Case "0" To "9"

      intIndex = CInt(Mid(strBC, i, 1))

    Case "A" To "Z"

      intIndex = Asc(Mid(strBC, i, 1)) - Asc("A") + 10

    Case Else

      MsgBox "要打印的条形码字符串中包含无效字符!当前版本只支持字符 注释:0注释:-注释:9注释:,注释:A注释:-注释:Z注释:,注释:-注释:,注释:%注释:,注释:$注释:和注释:*注释:"

    End Select

    

    注释: 是否在条形码下方打印人工识别字符

    If bolPrintText = True Then

      Printer.CurrentX = x

      Printer.CurrentY = y + intHeight

      Printer.Print Mid(strBC, i, 1)

    End If



    For j = 1 To 5

      注释: 画细线

      If Mid(strBarTable(intIndex), j, 1) = "0" Then

        For k = 0 To intWidthXI - 1

          Printer.Line (x + k, y)-Step(0, intHeight)

        Next k

        x = x + intWidthXI

      注释: 画宽线

      Else

        For k = 0 To intWidthCU - 1

          Printer.Line (x + k, y)-Step(0, intHeight)

        Next k

        x = x + intWidthCU

      End If



      注释: 每个字符条码之间为窄间隙

      If j = 5 Then

        x = x + intWidthXI * 3

        Exit For

      End If

      

      注释: 窄间隙

      If Mid(strBarTable(intIndex), j + 5, 1) = "0" Then

        x = x + intWidthXI * 3

      注释: 宽间隙

      Else

        x = x + intWidthCU * 2

      End If

    Next j

  Next i



  注释: 恢复打印机 ScaleMode

  Printer.ScaleMode = intOldScaleMode

  注释: 恢复打印机 DrawWidth

  Printer.DrawWidth = intOldDrawWidth

  注释: 恢复打印机 Font

  Set Printer.Font = fntOldFont

End Sub



  最理想的情况是将它做成一个控件,在控件中提供一个打印方法,该方法实现与上

  那个过程大致相同,只是不能在控件中直接使用VB的Printer对象,否则VB会将你在控件中的打印输出处理为一个单独的页面,而是应该将Printer.hDc传给它,通过调用那些需要指定 HDC 的Windows API函数实现与容器的打印输出在一个页面上,比如我们可以这样定义这个控件的打印方法:

注释: PrintIt 方法将对应的条形码输出到缺省打印机

Public Sub PrintIt(ByVal PrintDC As Long, _

   Optional ByVal intXPos As Integer = 0, _

  Optional ByVal intYPos As Integer = 0, _

   Optional ByVal intPrintHeight As Integer = 10)

  既然不能使用Printer对象,那么画线和输出文字也不能使用Printer对象的Line和Print方法,在我们的程序中至少要申明以下三个Windows API函数:

‘ 移动画笔的位置

Private Declare Function MoveToEx Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, lpPoint As POINTAPI) As Long

‘ 从画笔的当前位置到(x,y)画一条线

Private Declare Function LineTo Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long

‘ 在(x,y)处输出一个字符串

Private Declare Function TextOut Lib "gdi32" Alias "TextOutA" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal lpString As String, ByVal nCount As Long) As Long

‘ MoveToEx() 函数需要的参数

Private Type POINTAPI

  xp As Long

  yp As Long

End Type

Dim papi As POINTAPI

  画线操作为(原来的Printer.Line函数):

MoveToEx PrintDC, x + k, y, papi

LineTo PrintDC, x + k, y + intHeight + 1

  打印字符为(原来的Printer.Print函数):

TextOut PrintDC, x, y + intHeight, Mid(strBC, i + 1, 1), 1
而立之年,开发者在害怕什么? 首席工程师揭秘:LinkedIn大数据后台是如何运作的 年交易额1800亿美元,揭秘PayPal成功背后的三大热门技术 微软妥协Android?向该平台推开源Office 365 SDK 中国云计算大会PPT集萃(一):众多名家分享技术挑战与行业趋势 速度是现在的10000倍,出自物理学家之手的新型电脑 逗你玩?淘宝开放平台从4月1起开始全面收费 出现编程疲劳?千万别纠结 “编程竞赛界王子”教你更好的招聘程序员 SA:三星全球智能电视市场份额达26% Cocos2d-x 3.0分语言包发布 最新进展即将披露 友盟:社会化分享成为APP开发“标准配置” 从“简单”的封面设计剖析Netflix背后的数据哲学 与Linus Torvalds“并列”,虚拟化天才程序员法布里斯贝拉 让超级计算机和数据中心“飞”,Intel推800Gbps神器MXC 【OSTC讲师专访】Debian开发者李道兵:平静地理解开源 红帽推出开源业务流程管理套件:JBoss BPM Suite 6 科学研究证明:程序员快乐才能更好的工作 ChocolateChip-UI:能“逆转”的跨平台应用开发框架 分享12款最佳的Bootstrap设计工具 Apache Flex 4.12发布,支持iOS 7 智能手机应用挑战Web平台,看W3C如何反击? 电信级数据流量与监控系统部署案例分享 TCL联手Mozilla,HTML5智能电视真的要来了! 先睹为快:Unity亚洲开发者大会虚拟游览展示 OSTC·2014 演讲日程出炉,Perl创始人来了! Unity将收购Applifier,并引入Everyplay和GameAds两大平台 《近匠》从Cubieboard到radxa:汤亮的第二次硬件创业 九头蛇与大象之争,Hydra或将取代Hadoop 喜讯:中国安全团队Keen成功在Pwn2Own 2014黑客大赛上攻破64位Mac上的Safari OCP黑客马拉松冠军:24小时头脑风暴背后 软件发布:邮件群发机 软件发布:拯救地球 软件发布:九城的修行器 软件发布:龙飞定时器 软件发布:加密vfp的exe,防止反编译 软件发布:“破解注册表编辑器” 软件发布:神奇注册表 软件发布:CDWizard(光驱精灵.NET) 软件发布:神通 2001 豪华版 软件发布:VB6历史文件清理器 菜单问题!!送分哟! 请问PB7.0中,Freeform格式的数据窗口中,为何按滚动条,数据不是滚动到第一页就是最后一页?如何实现自由滚动? B/S结构用何东东编最快? 关于mpeg-4 请问各位大虾:CBitmap对象如何写入一个BMP文件? 对面的大哥看过来!高分征解有关SetWindowPos的问题。 如何刷新文件内容的缓冲? 昨天一夜星际~~~后 一个捉摸的问题,、高分请解决! 在WEBLOGIC5.1上发布EJB1.1的一个小问题 请教,如何用jbuilder 写midas的服务器, 我们公司一个程序员的头式太难看了,我每次见他就恨不得拿剃头的推子给他剃光光! 寻最好的ftp软件 autoCAD的问题 找本站里面《程序员测试软件》的注册码 刚毕业的不能报? .lib 文件到底是怎么回事?如何查看它的内容? 请问,下面的警告提示什么意思(关于sybase) 那位可以给我描述一下“代表”? 请问有WINsock编程高手么,帮我看一下下面的程序 紧急招聘PB程序员(成都) 关于产品序列号的问题……想了很久了。 这里有几个问题,能者请进! 请教VC项目开发经验 如何让下载的程序变成免费的? 请问有Pdf到Text的转化的源代码么? 能否让下载的程序变成免费的? 请问怎样才能自动复制文本框中的文本到剪贴板? 是否可用简体中文的VB开发翻体中文的应用程序? 使用JavaMail转发邮件 在servlet中是不是不可以引用其它的类中的函数.(这个类不是派生于HttpServlet) 为什么买书配送的光盘文件在BCB工程中打开后不让修改(打开前已转换为存档文件了)? 请教使用OPEN CLIENT 的一个小问题 索求算法 请问能否将下载的程序变成免费的? 现在学习C#不晚吧,:P 关于VB中控制运行实例的问题 请教关于DBGRid的问题。 请问在Java下如何实现文件压缩?有没有现成的接口或者压缩算法代码?多谢 这里下载C#电子书《C#教程》(中文 希望出版社) 我如何才能删除ORACLE中建立的用户??总是提示用户不存在或SQL第归错误等等!! 王大伯家购进2分之1吨煤,第一天用去总数的4分之1,第二天用去总数的5分之1,剩下的占总数的几分之几? 王师傅加工一批零件,第一天加工了44个,第二天加工总数8分之3,这时两天已加工的零件个数与未加工的零件个数比13:7,这批零件一共有多少个?算术解 修路对修一条公路,第一天修了全长的3分之1,第二天修了全长的2分之1,两天共修了全长的几分之几 有7/8吨煤,第一天用去1/3,第二天用去2/5,还剩下几分之几?1-(1/3+2/5)=4/15对吗? 李师傅加工一批零件,第一天加工了全部零件的三分之一,第二天加工了15个零件,两天已加工的零件盒剩下加工的零件个数比是1:1,这批零件一共有多少个? 某修路队修一条公路,第一天修了全长3/10..某修路队修一条公路,第一天修了全长3/10,第二天修了全长9/20,第二天比第一天多修24千米.(1)第二天比第一天多修这条公路的几分之几?(2)这条公路共长 张师傅加工一批零件第一天完成了总数的15分之7第二天比第一天多加工了18个这批零一共多少个 王师傅加工一批零件,第一天完成这批零件的25% 第二天完成了35%,还剩360个零件没加工.问这批零件共有多少个? 一堆煤,第一天运走4分之1,第二天运走剩的乙班,第三天又运走剩下的3分之2,最后剩下的煤比第三天运走的4分之3少10吨.这堆煤共有多少吨? 秦师父两天加工完一批零件,第一天完成了总数的十五分之七,第二天比第一天多加工了18个.这批零件有多少个 车间要生产一批零件,第一天完成总量的1/4,第二天350个,剩下的与已做的比是2:3,共有零件多少 一堆煤,第一天用去30%,第二天用了4分之1,还剩13.5吨,这堆煤共有多少吨急 王师傅加工一批零件,第一天完成的个数是未完成个数的2分之1,如果再加工240个,就可以成这批零件的50%,这批零件有多少个 某车间生产一批零件,第一天完成总数的3/1,第二天做了400个,这时剩下的零件与做的零件的个数的比是2比3这批零件有多少个? 一堆煤,第一天用去5/1.第二天用了5/2吨,刚好用完,这堆煤共有多少吨? 王师傅加工一批零件,第一天加工了总数的5分之1,第二天加工总数的15分之2,还剩下160个,这批零件共有多 某车间做一批机器零件,8天做了360个,还剩下3/11,照这样计算,剩下的还要几天完成? 一堆煤10吨,第一天用去4分之1,第二天用去4分之3吨,还剩多少吨?是求还剩多少吨的啊 小宁看一本书故事书,9天看了这本书的一半.照这样的速度,他6天看了这本书的几分之几?.我家小学生用我的百度号问的.我现在才知道.无语了, 王师傅加工一批零件 第一天加工了总数的3分之1,第二天加工的个数是第一天的2分之1第二天加工了总数的几分之几? 王师傅要加工360个零件,第一天加工了6分之1,根据算式补充条件(1) 360×6分之1【 】?(2)360×(6分之1+10分之3)【 】?(3)360×(10分之3-6分之1)【 小明15天看完一本故事书,平均每天看这本书的几分之几?4天呢?6天呢? 王师傅加工一批零件,第一天完成总数的1/4又7第二天完成余下的2/5多2个,还剩全部的5/18,共多少零件? 王师傅接了加工360个零件的任务,第1天完成任务的9分之1,第2天完成啦18%.第2天加工啦多少. 小强看完一本故事书要6天时间,平均每天看几分之几?3天看几分之几?5天呢? 王师傅加工一批零件 第一天完成总数的1/4又7第二天完成余下的2/5多2个,还剩19个,共多少零件? 王师傅计划加工360个零件,结果第一天完成了任务的6分之1,第二天完成的是第一天的3分之2,还有多少个零件没有完成? 一本150页发故事书,第一天读了五分之二,第二天读了余下的三分之一.第二天读了多少页? 加工一批零件,第一天完成总数的的1/4多7个、第二天完成余下的2/5多2个,还剩全部的5/18,共多少零件? 刘师傅要加工360个零件,第一天加工了总数的20%,第2天又加工了总数的30%.还剩下多少个 一本故事书,第一天看了总页数的3分之一,第2天看了总页数的4分只一,这本故事书共有多少页? 李师傅加工一批零件,第一天加工了总数的四分之一,第二天比第一天多加工20个,还剩下100个没有加工,这批零件共有多少个 方程解 小王加工360个零件,其中有4个不合格,合格的零件占加工零件总数的几分之几? 一本故事书240页,小华4天看了全书的3分之2,他平均每天看多少页 某车间加工一批零件,第一天加工225个,占总数的3/10,第二天加工的是第一天的4/5还有多少个零件没加工? 计划生产1800个零件,第一天生产了计划的1/4,第二天生产了计划的1/6.还剩下计划的几分之几没生产?还剩下多少个没生产? 一本168页的故事书,小华4天读了96页.照这样计算,小华读完这本书一共需要多少天?急 某工厂加工一批零件,第一天加工了总数的20%,第二天比第一天多加工了120个?问他在下面某工厂加工一批零件,第一天加工了总数的20%,第二天比第一天多加工了120个,第三天加工的零件相当于前 生产一批零件,第一天生产180个,第二天生产的比总数的4分之1少30个,两天共生产了总数的3分之一.共有多少个?我知道列式,但不知道为什么是(180-30)÷(三分之一减四分之一)【180减30表示什 小明看一本120页的故事书,每天看十分之一,已经看了3天,还有几分之几没有看? 工厂加工一批零件,第一天加工总数的20%,第二天比第一天多加工120个,第三天加工的相当于前两天的和,这时还剩下100个没加工.这批零件一共有多少个?请列出详细算式.歇歇. 某车间两天生产完一批零件,第一天完成零件总数的7/12,比第二天多生产180个零件.这批零件共有多少? 小明看一本120页的故事书,每天看十分之一,已经看了3天,还有几分之几没看?还有多少页没看? 1.某工厂加工一批零件,第一天加工了总数的20%,第二天比第一天多加工了120个,第三天加工的零件数相当于天两天加工个数的总和,这时还剩下100个没加工.这批零件一共有多少个? 一段路,第一天修了它的9分之5,第二天修了第一天的5分之1,两天共修了这段路的几分之几? 小东看一本故事书120页每天看十分之一已经看了3天还有几分之几没看 雷锋车间三天生产了一批零件,第一天生产了总数的七分之二,第二天比第一天多生产了十五个,第三天生产了六十个,这批零件共有多少个? 修一条路,第一天修了全路的10分之1,还剩下全路的几分之几.第二天修了剩下的9分之1,第二天修了全路的几分之几? 小明看一本120页的故事书,每天看1/10,已经看了3天,还有几分之几没有看? 某工厂加工一批零件第一天完成了零件总数的三分之一多24件,第二天完成了零件总数的三分之1少12件,第3天完成了剩下的60件,求这批零件的总数.用设x的方程 修一段公路,第一天修了这段路的16分之5,第2天与第一天修的同样多,还剩下这段路的几分之几没有修? 一本本故事书,小飞每天看100页.他每天看这本书的几分之几?四天呢? 某工厂加工一批零件第一天完成了零件总数的三分之一多24件,第二天完成了零件总数的三分之1少12第3天完成了剩下的64件,求这批零件的总数.用方程 修路队修一条公路,第一天修了全长的3分之1,第二天修了全长的2分之1,两天共修了全长的几分之几? 一本100页的故事书,小飞,每天看20页.他每天看这本书的几分之几?四天呢? 某工厂加工一批零件,第一天完成总零件数的1三分之一又25件,第二天完成的是剩下零件数的三分之二少12件第三天完成了剩下的64件,求总数 一个修路队要修一段公路,第一天修了全长的1/3,第2天修的长度一天的3/4,两天一共修了全长的几分之几计算 一本故事书,小飞要10天看完,前4天每天看书20页,后6天每天看25页,这本书有多少页 某工厂加工一批零件第一天完成了零件总数的三分之一多24件,第二天完成了零件总数的三分之1少12件,第3天完成了剩下的60件,求这批零件的总数.用设x的方程 修路队修路.第一天修了全程的1/5,第二天修了剩下的1/4,第二天修了这条路的几分之几
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn