/* C# */
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Test_003
{
class Program
{
static void Main(string[] args)
{
Console.Write("输入身份证前17位: ");
string Number = Console.ReadLine();
//char[] Number2 = Number.ToCharArray();
long[] Number3 = new long[17];
long Number4;
Number4 = long.Parse(Number);
int i = 16;
while (i >= 0)
{
Number3[i] = Number4 % 10;
Number4 /= 10;
i--;
}
foreach (int item in Number3)
Console.Write(item);
int[] Weight = { 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 };
long Sum = 0;
int j = 0;
for (; j < 17; j++)
{
Sum += Number3[j] * Weight[j];
}
Console.WriteLine();
Console.WriteLine("权重和: "+ Sum);
int modNumber =(int)Sum % 11;
Console.WriteLine("余数: " + modNumber);
char end = ' ';
char[] Check = {'1','0','X','9','8','7','6','5','4','3','2' };
int index = 0;
for (; index < 11; index++)
if (index == modNumber)
end = Check[index];
Console.Write("第18位: " + end);
Console.Write("\n身份证号: ");
foreach (var item in Number3)
Console.Write(item);
Console.Write(end);
Console.Read();
}
}
}
求身份证号末位
最新推荐文章于 2023-04-27 14:09:39 发布