问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

同C语言 验证 身份证号码 合法性 。

发布网友 发布时间:2022-04-29 22:52

我来回答

3个回答

热心网友 时间:2022-06-25 02:07

#include "stdio.h"

void main()
{
int i; /*身份证的第i位*/
int s[17]; /*定义一个数组用来存放身份证的前17位*/
int t[17]; /*各位相乘后的数组*/
int m; /*余数*/
int t18; /*身份证的第18位0--9*/
char t18c; /*身份证的第18位X*/
long int sum=0;
for(i=0;i<17;i++)
{
printf("请输入身份证的第%d位:",i+1);
scanf("%d",&s[i]);
switch(i+1)
{
/*身份证的1到17位要乘的数一次是7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 */
case 1:t[i]=s[i]*7;break;
case 2:t[i]=s[i]*9;break;
case 3:t[i]=s[i]*10;break;
case 4:t[i]=s[i]*5;break;
case 5:t[i]=s[i]*8;break;
case 6:t[i]=s[i]*4;break;
case 7:t[i]=s[i]*2;break;
case 8:t[i]=s[i]*1;break;
case 9:t[i]=s[i]*6;break;
case 10:t[i]=s[i]*3;break;
case 11:t[i]=s[i]*7;break;
case 12:t[i]=s[i]*9;break;
case 13:t[i]=s[i]*10;break;
case 14:t[i]=s[i]*5;break;
case 15:t[i]=s[i]*8;break;
case 16:t[i]=s[i]*4;break;
case 17:t[i]=s[i]*2;break;
}
sum=sum+t[i];

}
printf("前17位相乘后的和为%ld\n",sum);
m=sum%17;
printf("对17取余后的值位:",m);
switch(m)
{
/*各个余数所对应第18位身份证号1 0 X 9 8 7 6 5 4 3 2*/
case 0:t18=1 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 1:t18=0 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 2:t18c='X';printf("这是一个合法的身份证号码,第18位是%c",t18c);break;
case 3:t18=9 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 4:t18=8 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 5:t18=7 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 6:t18=6 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 7:t18=5 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 8:t18=4 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 9:t18=3 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
case 10:t18=2 ;printf("这是一个合法的身份证号码,第18位是%d",t18);break;
default:printf("这不是一个合法的身份证号码");
}
printf("\n");
}

热心网友 时间:2022-06-25 02:08

楼上手真快,本来准备吃完饭就来答的

热心网友 时间:2022-06-25 02:08

51297845358
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
一拳一拳打峰哥是什么歌_一拳一拳打峰哥歌曲介绍 网上办理这个准生证然后没有领取不知道点到哪了然后就没法再领取 绿油油的叠词是什么? 什么的小溪叠词填空 硅胶礼品特性 华东理工大学长江学院是一本吗 东华理工大学长江学院是公办还是民办大学 东华理工大学长江学院是一所... 模压硅胶制品如何成型的 东北理工大学长江学院是公办还是民办 东华理工大学长江学院是几本大学 如何安装太阳能的电加热器? C语言设计程序判断身份证号的合法性,并输出到指定日期的天数? 微信转帐或发出多红包能打出清单不 我咨询一下,太阳能热水器加热棒是好的可人工加热时不会升温,这是什么原因? 小学生英语课堂表现评语从哪些方面说 家长对三年级英语卷子的评语 我的鼠标灵敏度已经调到最高了 但是还是有点慢 有其他的软件帮助加速调节吗 苹果7玩王者荣耀 屏幕一下子变暗 很久才变亮 自动调控关掉了 帮忙... 为什么我把鼠标灵敏度调到最高,在CF的时候也把鼠标移动调到最高,可还是闲不够灵敏,该怎么办 为什么我的电脑控制面板里的鼠标移动速度拉到最高还觉得慢 excel函数公式中的*是什么意思 我的苹果7手机屏幕亮度忽明忽暗,亮度自动调节我都已经关过了,还是这样怎么回事? 鼠标速度调到最大,还是很慢,怎么办? 鼠标灵敏度在控制面板调到最高,在游戏里为什么还是很慢 ? iphone 7 plus屏幕突然变暗怎么办? 鼠标移动拉到最快,速度还是慢 怎么进徐州矿业大学成教院招收成人自考班啊?? =常州市专业技术人员继续教育网上的考试是怎么考的?,是不是在家上网考就可以了? 我在控制面板里面把鼠标速度调到了最快,但我觉得还是很慢,怎么可以再调快点么??? 货运资格证继续教育的网址是什么 加热棒一工作会闪白光么 有没有excel的命令可以检测身份证号是否合法 快速完成拼图的方法是什么? 平面图型拼图是什么意思 C语言作业:4. 设计身份证号合法性验证程序 公司验证员工的身份证信息是否合法 求行测图形推理中,平面拼图的解题技巧 在文本框中输入自己的身份证号,按回车键验证其合法性。 鸦片战争史 鸦片战争的历史事件 用史实说明,鸦片战争史中国沦为半殖民地半封建社会的开端 胖ap和瘦ap的区别什么? 历史鸦片战争 胖AP和瘦AP是有哪些区别? 第二次鸦片战争史的内容简介 胖AP和瘦AP的区别 我国近代史中的鸦片战争是谁发起的? 怎样理解鸦片战争史中国近代史的起点 瘦无线AP和胖无线AP有何区别?怎么区分? 第二次鸦片战争史的目录