一、题目描述:

身份证号的校验身份证号码共18位,最后一位是校验位A[17]

aaaaaabbbbbbbbcccd 校验的规则是如下:
前十七位的权值分别是:W[17]:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
x=(A[0]*W[0]+A[1]*W[1]+…+A[16]*W[16])mod11
x和校验位y的对应规则如下:
x:0 1 2 3 4 5 6 7 8 9 10
y:1 0 x 9 8 7 6 5 4 3 2
若y等于d则身份证号码正确

二、输出格式:

身份证号码正确
身份证号码不正确

三、输出样例:

52242619811105565x正确

五、解决方法:

(1)思路:

  • 验证输入身份证是否18位
  • 身份证校验位的校验

(2)代码实现:

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;int main()
{int W[17]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};char check[11]={'1','0','x','9','8','7','6','5','4','3','2'};char A[18]={'0'};   //check和A都是char类型cin>>A;//验证输入的身份证号是否为18位,strlen函数int num=strlen(A);if(num !=18) cout<<A<<"不正确";//计算前17位权值//要进行加权,所以A本是字符,所以要转化成数字,ASCII要减去48,也可写成 (int)A[i]-'0' ,字符'0'对应的ASCII就是48int sum=0;for(int i=0;i<17;i++)sum+=int(A[i]-48)*W[i];int x=sum%11;   //x和y时计算得来 正确的char y=check[x];  //y与身份证最后一位是否相等,相等输出:身份证号正确,不相等输出:正确身份证号错误if(check[x]==A[17]){cout<<A<<"正确"<<endl;system("pause");return 0;}else{for(int i=0;i<17;i++)cout<<A[i];cout<<y<<"错误"<<endl;system("pause");return 0;}
}

【复试】2017北京理工大学上机(一)----身份证校验相关推荐

  1. 2017北理计算机考研复试线,北京理工大学2017年硕士研究生复试分数线

    2020考研初试已经结束,由于2020考研人数的增加,参加考研复试的人数也会大大增加,考生在初试过后切不可放松,我们需要将准备复试提上日程!下面,北京文都考研网为广大考生整理出"北京理工大学 ...

  2. 2021北理工计算机专业复试名单,北京理工大学2021研究生拟录取名单链接汇总

    2021北京理工大学研究生拟录取名单整理汇总(各学院) 北京理工大学拟录取名单详见各学院官网通知公告(注意前后翻页,有公布调剂录取名单) 机电学院: https://smen.bit.edu.cn/t ...

  3. 2021北理工计算机专业复试名单,北京理工大学研究生拟录取名单2021整理汇总(各学院)...

    2021北京理工大学研究生拟录取名单整理汇总(各学院) 北京理工大学拟录取名单详见各学院官网通知公告(注意前后翻页,有公布调剂录取名单) 机电学院: https://smen.bit.edu.cn/t ...

  4. 武汉理工大学计算机学院研究生复试,2017武汉理工大学计算机考研复试经验

    2017年4月1日愚人节对没错就是愚人节.计算机学院的官网上放出了拟录取名单.半年的长跑终于有了结果本人本科学的也不是计算机的,来自万金油管理学院的信管专业.普通一本.像我这样跨专业夸学校又不是211 ...

  5. 北京理工大学计算机基本介绍

    1. 北京理工大学计算机介绍 北京理工大学计算机学院始建于1958年,是全国最早设立计算机专业的高校之一.2018年4月,计算机学院.软件学院.网络科学与技术研究院合并成立新的计算机学院.学院累计为国 ...

  6. 历年北京理工大学复试上机题

    历年北京理工大学计算机复试(上机+专业综合): http://blog.csdn.net/u014552756/article/details/78506072 2000年北理复试上机题 2001年北 ...

  7. 北京理工大学2000年复试上机题

    北京理工大学2000年复试上机题 一个数如果恰好等于它的各因子(该数本身除外)子和,如: 6=3+2+1,则称其为"完数":若因子之和大于该数,则称其为"盈数" ...

  8. 北京理工大学复试上机题汇总

    秉承前人精神,祝学弟学妹们顺利上岸!!!!! (00-14和16-17是我转载的别的博主的,15.18和19是我的原创.题意大都描述正确,代码只具有一定参考性,希望大家都自己实现一下) 历年北京理工大 ...

  9. 19年北理考研计算机复试分数多少钱,2019年北京理工大学考研复试分数线已出现...

    考研复试备考除了复习,考研调剂也是需要重点关注的.下面由出国留学网小编为你精心准备了"2019年北京理工大学考研复试分数线已出现",持续关注本站将可以持续获取更多的考试资讯! 20 ...

最新文章

  1. TCP滑动窗口(发送窗口和接受窗口)
  2. Python规范:提高可读性
  3. Java POI 导出EXCEL经典实现 Java导出Excel
  4. Algorithm——1.排序.md
  5. 【渝粤教育】电大中专会计电算化_1作业 题库
  6. 巧用异或运算符(洛谷P1161题题解,Java语言描述)
  7. 超棒!纯Rust编写的机器学习框架,速度堪比PyTorch
  8. 详解:Sqoop的介绍
  9. UVA465 Overflow【大数】
  10. MAC:使用install_name_rpath修改编译结果的rpath
  11. ie/ff动态的添加属性、事件
  12. win7计算机里没有视频,win7没有视频捕捉硬件怎么办
  13. struts2继承ActionSupport
  14. A 股历年三大财务报表
  15. 实现多余文字显示省略号
  16. 2022卡塔尔世界杯。CSDN世界杯勋章来啦
  17. SQL:统计每5min在线人数思路
  18. 内核logo 前闪 linux,Linux内核启动中显示的logo的修改
  19. 炉火大辩论:从DEX创新启示,看未来加密资产交易将如何演化(全文)
  20. 计算机系统重新之后为啥没声音,电脑重装系统后没声音怎么办 电脑重装系统后没声音解决方法...

热门文章

  1. 剑指offer-二叉搜索树的第k个结点(python和c++)
  2. 解决maven打jar包时不把依赖打包进去的问题
  3. 近年现场比赛补题(From 2013 to 2018)[持续更新]
  4. win10在不关闭防火墙的情况下实现无线投屏
  5. 使用仿射变换将一幅图像放置到另一幅图像中
  6. 可以买到 Linux 电脑的 10 个地方
  7. 文本溢出隐藏显示... 鼠标移动到元素显示全部内容
  8. 英语二 - 常用词根一
  9. 神经网络中的反向传播
  10. Part-Ⅰ3. 稳态等效电路建模/损耗/效率(三)