写着好玩写的,纯粹是想知道最后那个校验码是怎么算出来的,具体的算法可以参考这里 更详细的例子,可以参考下面的链接: http://www.heybrain.com/notheal/article/1138.html
我这里是用shell实现了,其实用C实现应该是最好的,毕竟算法的东西,C还是要快很多,我本是打算用C的,结果发现我都忘记得差不多了,连最简单的申明数组并初始化都忘记了,于是只要用效率比较低的shell,不过在做一些匹配和校验的时候,感觉比C要方便一些,不多说了,给代码
File /Users/wgzhao/Sites/blog.wgzhao.com/source/downloads/code/idcard.sh could not be found
一个实际的例子如下:
$ idcard.sh 340524800101001
Your New 18bit ID Card is : 34052419800101001X