zoukankan
html css js c++ java
一个身份证号码转换程序
/**/
/*
* 身份证号码结构:
* 十七位数字本体 + 一位校验码
* 从左到右依次为:
* 六位数地址码+八位数出身日期+三位数顺序码和一位校验码
* 地址码 : 由出生地区行政码划分
* 年出生日期码 : 年月日,之间不用分隔符
* 顺序码 : 同年同月同日生,男为奇数,女为偶数
* 校验码 : (1)十七位数字本体码加权求和公式
* s = sum(ai*wi),i=0,...,16
* ai: 第i位置上的身份证号码数字值
* wi: 第i位置上的加权因子
* wi: 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
* (2)求模
* Y = mod(s,11)
* (3)通过模得到对应的校验码
* Y: 0 1 2 3 4 5 6 7 8 9 10
* 校验码: 1 0 X 9 8 7 6 5 4 3 2
*/
/**/
/////////////////////////////////////////////////////////
//
#include
<
iostream
>
#include
<
fstream
>
#include
<
cstdlib
>
#include
<
assert.h
>
#pragma
warning(disable:4786)
using
namespace
std;
/**/
/////////////////////////////////////////////////////////
//
//
参数入口定义
#define
IN
#define
OUT
//
常用值定义
#define
FALSE 0
#define
TRUE !(FALSE)
const
int
MODIFY_SPLITER
=
1
;
const
int
MODIFY_LENGTH
=
2
;
//
对应表格定义
//
加权因子
const
unsigned
int
w[
17
]
=
...
{
7
,
9
,
10
,
5
,
8
,
4
,
2
,
1
,
6
,
3
,
7
,
9
,
10
,
5
,
8
,
4
,
2
}
;
//
校验码
const
char
check_code[
11
]
=
...
{
'
1
'
,
'
0
'
,
'
X
'
,
'
9
'
,
'
8
'
,
'
7
'
,
'
6
'
,
'
5
'
,
'
4
'
,
'
3
'
,
'
2
'
}
;
/**/
/////////////////////////////////////////////////////////
//
//
函数声明
/**/
///////////////////////////////////////////////////////////////////////////
//
这个函数从OOP角度讲应该是private属性的
//
----------------------------------------------------------------------
//
void
ChangeIDInLine(IN
const
char
*
source, OUT
char
*
dest, IN unsigned
int
from);
/**/
/*
【source】: 以'
/*
*
* Copyright (c) 2011 Ubunoon.
* All rights reserved.
*
* email: netubu#gmail.com replace '#' to '@'
* http://www.cnblogs.com/ubunoon
* 欢迎来邮件定制各类验证码识别,条码识别,图像处理等软件
* 推荐不错的珍珠饰品,欢迎订购 *
宜臣珍珠(淡水好珍珠)
*/
查看全文
相关阅读:
SSH框架的简单上传功能的实现
笔记:《C++ Primer》第3章
笔记:《C++ Primer》第1章和第2章
tcl脚本学习十三:列表命令集
tcl脚本学习十二: upvar的学习
tcl脚本学习十一:proc应用 (带默认参数)
tcl脚本学习十:proc 子函数的使用
tcl脚本学习八:while循环的使用
tcl脚本学习九:for循环的学习
tcl脚本学习七:if的学习
原文地址:https://www.cnblogs.com/ubunoon/p/2058928.html
最新文章
JS常见兼容问题及处理方法总结
float元素上-margin的用法
JavaScript 推箱子游戏
Math 用法
for in 与for 与hasOwnProperty
编程语言 学习汇总
flex弹性布局
vs code插件大全
重复输入字符串的方法
vue 项目中的less
热门文章
vue 的模拟数据
windows命令行窗口打开mysql,并创建数据库,导入sql文件
c++ primer 资料链接地址
checkbox全选与取消全选
javaScript动态生成列表(获取点击列表的id)
js验证手机号码是否符合标准
spring MVC入门教程
OAuth2.0相关知识
ajax提交数据到java后台,并且返回json格式数据前台接收处理值
myeclipse配置maven
Copyright © 2011-2022 走看看