使用方法
- 数值框默认填 1.234,允许 0 到 1000000 之间的数,支持小数。长度不取负值,填负数会给出具体原因;光标停在框里直接按回车,或点「开始换算」,结果立刻刷新。
- 源单位默认千米,目标单位默认厘米。两个下拉都列出千米、米、厘米、毫米、英里、码六种,想反向就把源选成厘米、目标选成千米,公式自动倒过来。
- 「交换单位」一键对调源与目标,适合先用正向算一遍、再回算一次看能不能回到原值;对调后结果区同步重算,不沿用上一轮数字。
- 小数位默认 6,范围 0 到 12,只管显示。本页的结果常常是整数,整数部分末尾的零不会被清掉,这正是为了保住换算后的量级标记。
- 批量框默认写好四行示例,每行一条「数值 空格 单位」。按 Ctrl+Enter(Mac 上是 Cmd+Enter)一次算完;若被清空,点换算时自动填回这四行,不会静默补零。
- 结果区标了 role="alert",读屏软件会播报;完整示例区把固定样本与批量行按当前系数即时算出,对照表十二行同样由脚本生成,源码里没有预填答案。
- 对照表默认显示前六行,点「加载更多」展开;「导出 CSV」下载带 BOM 的文件,「复制对照表」按 TSV 送进剪贴板,粘进表格软件自动分列。
- 小数位为空或非整数、数值为空或夹带单位字样、超出上限、批量行缺单位或单位不在六种之内,都会分别报出带行号的具体提示。
能解决什么问题
第一类是图纸与测绘里的单位串档。地形图用千米标里程,施工图用毫米标构件,中间还夹着米与厘米。跨这么多档抄数时,最常见的不是算错乘法,而是把结果末尾的零随手删掉或补错,量级一下子差百倍。
第二类是把换算误当成提高精度。一段量到 1 米精度的距离写成 1.234 千米,换成厘米是 123400 厘米,看着像精确到了厘米,其实测量精度还停在 1 米。做误差分析、写报告的有效数字时,这个误会会让结论看起来比实测可靠得多。
第三类是反向复核。报表给出 100000 厘米要折回多少千米,或 1 厘米折成 0.00001 千米,本页两个方向共用一套系数,回算值与正向值相乘应回到 1,可以直接用来验算有没有把乘除方向搞反。
本站把这件工具登记为「千米转厘米」,下面按这个口径把系数、末尾零的来历与边界逐项说明。它不做坐标投影、不做面积体积推导,也不判断你的原始数据精确到哪一位,只负责把一个长度数值在两种单位之间等值搬移。
原理和变量
本页以米为基准给每个单位配一个因子 F:千米 1000、米 1、厘米 0.01、毫米 0.001、英里 1609.344、码 0.9144。换算只有一步,结果 = 数值 × F[源单位] ÷ F[目标单位]。千米到厘米就是 1000 ÷ 0.01 = 100000,反向是 0.01 ÷ 1000 = 0.00001,两者互为倒数,所以源与目标对调即可完成反向,不需要第二张系数表。
技术内核:大跨度换算里的末尾零不是精度。千米到厘米要连乘两级公制前缀:1 千米 = 1000 米,1 米 = 100 厘米,合起来是 1 千米 = 100000 厘米,所以任何输入都要乘上 100000。取 1.234 千米这个有四位有效数字的量,它表示测到 0.001 千米,也就是 1 米这一档;乘 100000 得 123400 厘米。结果末尾那两个 0 只是把 1234 米改写成厘米时,由「1 米 = 100 厘米」这个单位定义补出来的,它们标记量级、不携带任何测量信息。换句话说,123400 厘米仍然只有四位有效数字,写成 1.234 乘十的五次方厘米最清楚。这里最容易犯的错,是把它当成六位有效数字,进而按「保留四位」把末尾两个 0 砍掉写成 1234 厘米——那不是四舍五入,而是把结果整整缩小了 100 倍,直接落回米的量级。反过来也不行:不能因为输入只有四位有效数字,就把换算结果截短再补单位。换算只换计数单位,不改变测量精度,有效数字的位数必须守恒,末尾由单位带来的零要原样保留。本页用定点小数输出,整数部分的零不会被当作「多余的小数」清掉,正是为了守住这条边界。
为什么偏偏是「两个零」:从千米到米乘 1000 补三个零,从米到厘米乘 100 补两个零;而 1.234 千米先变成 1234 米,再变成 123400 厘米,最后两个零来自第二级。若换成毫米,还要再补一位,末尾零的数目随目标单位变化,但它们始终只是量级标记,与测量误差无关。
完整示例
固定样本取 1、2.5、1000、1.234 四个千米值,再加一条反向的 1 厘米,全部由页面脚本按同一公式即时计算,不写死结果。切换源单位、目标单位或小数位,下面的结果会整体重算。
读的时候盯住 1.234 那一行:它应当得到 123400 厘米,末尾两个零完整保留。若你把小数位调到 0,显示的仍是 123400 而不是 1234,因为小数位只裁小数部分,不动整数末尾的零。反向那行 1 厘米等于 0.00001 千米,位数少时会被舍成 0,回算核对建议把小数位设到 6 以上。
对照表
下表以当前源单位为输入,取 0.001、0.01、0.1、1、1.234、2、2.5、5、10、25、100、1000 共十二个数值,逐行算出目标单位的结果。十二行全部由脚本用同一个公式生成,页面源码里不预填任何答案。
| 输入值 | 换算结果 |
|---|
默认只显示前六行,点「加载更多」展开后六行;「导出 CSV」生成带 BOM 的文件,「复制对照表」按 TSV 复制。这张表跟着源与目标变化,切到反向时自动变成厘米到千米的对照,1.234 所在那行也会随之移到对应的量级上。
结果边界与舍入
- 小数位只裁小数部分,按四舍五入取到指定位数并去掉小数末尾多余的零;整数末尾的零一律保留,避免把 123400 写成 1234。
- 浮点误差由定点化消除。0.01 在二进制里并不精确,1.234 乘 100000 有可能得到 123400.00000000001 这类尾数,输出前按指定小数位取整,不会把浮点毛刺带进结果。
- 极小或极大的结果改用科学计数法,绝对值小于十亿分之一、或大于等于一千万亿时触发,避免一长串零把版面撑破。
- 数值上限 1000000、下限 0,长度不接受负数;超范围会明确提示,不截断、不静默归零,也不沿用上一次结果。
- 每条非法路径都有具体文案:小数位为空、非整数、超出 0 到 12;数值为空、夹带 km 或 cm 字样、超出范围;批量行缺单位、单位不在六种之内、整框没有可计算的行。它们分别报出,不合并成一句。
- 页面不联网、不写 Cookie 或本地存储,所有换算只在你当前的浏览器里完成。
常见问题
1 千米等于多少厘米?
等于 100000 厘米。1 千米 = 1000 米,1 米 = 100 厘米,两级相乘就是十万倍。反过来 1 厘米 = 0.00001 千米,两个系数互为倒数,正向与反向相乘应得 1。
1.234 千米换成厘米为什么末尾有两个零?
因为 1 米 = 100 厘米。1.234 千米先变成 1234 米,再乘 100 变成 123400 厘米,补出来的两个零来自第二级单位定义,只标记量级,不表示量到了厘米。
能把 123400 厘米写成 1234 厘米吗?
绝对不能。那是把结果缩小了 100 倍,等于退回米这一档。有效数字是四位没错,但四位有效数字要写成 1.234 乘十的五次方厘米,而不是砍掉末尾零。换算不改变精度,也不允许改变量级。
换算会不会让测量更精确?
不会。1.234 千米只精确到 1 米,换成 123400 厘米后精度仍是 1 米,只是计数单位变小了。小数位设得再多也补不回原始测量没给的信息,多出来的位数只有舍入意义。
怎么反向把厘米换回千米?
把源单位选成厘米、目标单位选成千米,或点「交换单位」一键对调。1 厘米会得到 0.00001 千米,100000 厘米回到 1 千米。反向位数多,建议把小数位设到 6 以上再看。
小数位设成 0 会把末尾零删掉吗?
不会。小数位只裁小数部分,123400 是整数,设成 0 仍显示 123400。会被去掉的是 1.234000 这种小数末尾的零,那属于显示美化,与量级无关。
批量框写「1 千米」为什么报错?
批量行的单位必须逐字匹配六个小写键之一:km、m、cm、mm、mi、yd,且与数值之间要有空格。「千米」是显示用的中文名,脚本只认小写键;缺单位或写了别的单位也会单独报出第几行。
输入的数据会上传吗?
不会。换算、批量解析与对照表生成都在当前浏览器里完成,页面不发起任何网络请求,也不写 Cookie 或本地存储。导出的 CSV 与复制的 TSV 同样只在本地生成。