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

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

判斷身份證號碼是否正確

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

}


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 贵德县| 嘉义县| 泗洪县| 石林| 梅河口市| 穆棱市| 酉阳| 上虞市| 应用必备| 曲松县| 屏边| 吉安县| 威海市| 中宁县| 都兰县| 隆尧县| 台湾省| 奇台县| 南涧| 扎囊县| 山东省| 襄樊市| 微山县| 宝坻区| 中超| 夏邑县| 铜川市| 洛阳市| 田东县| 德钦县| 阳泉市| 蒙城县| 漯河市| 新化县| 临潭县| 都匀市| 原阳县| 奇台县| 龙海市| 柯坪县| 平果县|