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

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

判斷身份證號碼是否正確

2019-11-14 10:25:10
字體:
來源:轉載
供稿:網友
今天寫了一道判斷身份證對錯的題,才發現身份證也有算法。。怪不得我以前自己亂編身份證不能通過。。科普一下:一個合法的身份證號碼由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;

}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 房产| 建始县| 顺义区| 三江| 曲周县| 崇文区| 长岛县| 肇庆市| 潜江市| 白银市| 鄯善县| 同江市| 铜山县| 中山市| 陆河县| 砀山县| 商南县| 海盐县| 冀州市| 溆浦县| 兴安盟| 弥渡县| 宜兰县| 浏阳市| 天镇县| 邵武市| 罗城| 岫岩| 黔南| 米脂县| 顺义区| 韩城市| 凤庆县| 北碚区| 中牟县| 庆城县| 手游| 朔州市| 含山县| 南京市| 理塘县|