国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

判斷身份證號碼是否正確

2019-11-14 09:51:30
字體:
來源:轉載
供稿:網友
今天寫了一道判斷身份證對錯的題,才發現身份證也有算法。。怪不得我以前自己亂編身份證不能通過。。科普一下:一個合法的身份證號碼由17位地區、日期編號和順序編號加1位校驗碼組成。校驗碼的計算規則如下:首先對前17位數字加權求和,權重分配為:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后將計算的和對11取模得到值Z;最后按照以下關系對應Z值與校驗碼M的值:Z:0  1  2  3  4  5  6  7  8  9  10M:1  0  X  9  8  7  6  5  4  3  2#include<stdio.h>char  bai(int  a){       char  c;       switch(a)       {               case  0:c='1';break;               case  1:c='0';break;               case  2:c='X';break;               case  3:c='9';break;               case  4:c='8';break;               case  5:c='7';break;               case  6:c='6';break;               case  7:c='5';break;               case  8:c='4';break;               case  9:c='3';break;               case  10:c='2';break;       }       return  c;}int  main(){       char  a[19];       int  c[100]={0},b=0,n,i,j,q[]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2},sum,z;       PRintf("請輸入18位身份證號碼(X為大寫):");       scanf("%s",a);               sum=0;       for(j=0;j<17;j++){       if(a[j]<'0'||a[j]>'9')       {               b=1;               break;       }       z=(a[j]-'0')*q[j];       sum+=z;       }       sum=sum%11;       if(bai(sum)!=a[17])       {               b=1;       }              if(!b)       printf("身份證號碼正確");       else       printf("身份證號碼錯誤");       return  0;

}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大关县| 灵川县| 垦利县| 邛崃市| SHOW| 茌平县| 法库县| 通城县| 西华县| 东丽区| 行唐县| 大安市| 贵港市| 镇巴县| 桃源县| 高雄市| 仁怀市| 吴忠市| 永定县| 绥德县| 石狮市| 隆子县| 福贡县| 嵊州市| 读书| 拉萨市| 台湾省| 海宁市| 江永县| 连南| 英吉沙县| 泸州市| 招远市| 郓城县| 溧水县| 德昌县| 香格里拉县| 方正县| 漳州市| 和平区| 阿瓦提县|