身份证号结构

身份证号共18位,由以下部分组成:
- 前6位:地址码,表示身份证持有人的户籍所在地;
- 第7-14位:出生日期码,表示身份证持有人的出生年月日;
- 第15-17位:顺序码,表示同一地址码下出生人的顺序;
- 第18位:校验码,用于验证身份证号的正确性。
如何计算年龄
提取出生日期
我们需要从身份证号中提取出生日期,出生日期码位于第7-14位,共8位,前6位表示年份,接下来2位表示月份,最后2位表示日期。
计算年龄
提取出生日期后,我们可以通过以下公式计算年龄:

年龄 = 当前年份 - 出生年份 - ((当前月份 < 出生月份)或((当前月份 = 出生月份)且(当前日期 < 出生日期)))
假设当前年份为2023年,出生日期为1995年1月15日,那么年龄计算如下:
年龄 = 2023 - 1995 - ((1 < 1)或((1 = 1)且(15 < 15))) 年龄 = 2023 - 1995 - 0 年龄 = 28
表格示例
| 身份证号 | 出生年份 | 出生月份 | 出生日期 | 年龄 |
|---|---|---|---|---|
| 110105199501151234 | 1995 | 01 | 15 | 28 |
| 120102198805102345 | 1988 | 05 | 10 | 35 |
FAQs
问题:身份证号中的顺序码有什么作用?

解答:顺序码用于区分同一地址码下出生的人,在同一个地址码下,出生日期相同的人会有不同的顺序码。
问题:如何判断身份证号中的校验码是否正确?
解答:校验码是根据身份证号前17位按照一定算法计算得出的,可以通过以下步骤判断校验码是否正确:
(1)将身份证号前17位分别乘以对应的系数(从左至右分别为:7、9、10、5、8、4、2、1、6、3、7、9、10、5、8、4、2); (2)将乘积相加; (3)将相加后的结果除以11,得到余数; (4)根据余数,查找对应的校验码(对应关系如下:0-1、1-0、2-X、3-9、4-8、5-7、6-6、7-5、8-4、9-3、10-2); (5)将计算出的校验码与身份证号中的第18位校验码进行比对,如果一致,则校验码正确。

