以下代码仅供参考
void number()
{
char buf[] = "身份证号码";
int per[] = {7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
char ver[] = "10X98765432";
int i,count;
printf("\n%d\n",strlen(buf));
for(i = 0;i < 17;i++)
count += (int)(buf[i]-'0')*per[i];
i = count % 11;
printf("i=%d\n",i);
if(ver[i] != buf[17])
{
//打印身份证号码非法
printf("error\n");
}
}
本文介绍了一种用于验证中国身份证号码合法性的算法实现。通过分析身份证号码的结构,利用特定的加权系数和校验码对照表,可以快速判断输入的身份证号码是否符合规定格式。代码示例使用C语言实现,展示了如何进行校验码的计算和比对。

1420

被折叠的 条评论
为什么被折叠?



