2020-08-10 C++ 算法提高 身份证号码升级

#include<bits/stdc++.h>
using namespace std;
main()
{
    char k,b[18]={0};
    int j=0,c[17]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2},sum=0;
    string a="10x98765432";
    cin>>b;
    for(int i=14;i>5;i--)
    {
        b[16-j]=b[i];
        j++;
    }
    b[6]='1';
    b[7]='9';
    for(j=0;j<17;j++)
    {
        sum=sum+(b[j]-'0')*c[j];
    }
    b[17]=a[sum%11];
    cout<<b;
}

猜你喜欢

转载自blog.csdn.net/qq_47991812/article/details/107907166
今日推荐