#include<stdio.h> int jy(char*s){ int flag=0;int i; int weight[] = {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2}; char ZtoM[] = {'1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'}; int sum=0;int k; for( i=0;i<17;i++){ sum=sum+weight[i]*(s[i]-48); } k=sum%11; int m=ZtoM[k]; if(m==s[17]){ flag=1; } return flag; } int main (){ int n;int i;int j; scanf("%d",&n); char s[n][19]; for(i=0;i<n;i++){ scanf("%s",s[i]); } int cnt=0; for(i=0;i<n;i++){ int t=i; for(j=0;j<17;j++){ if(s[i][j]=='X'){ printf("%s\n",s[i]); cnt++;t++; break; } } if(jy(s[i])==0&&t==i){ printf("%s\n",s[i]); cnt++; } } if(cnt==0){ printf("All passed"); } return 0; }
7-63 查验身份证
猜你喜欢
转载自blog.csdn.net/michaelliu6/article/details/78621692
今日推荐
周排行