1.

输入身份证号,通过计算比较校验位来判断身份证号是否正确。
如,aaaaaayyyymmddxxsp共18位,其中:
年份代码yyyy共4位。最后一位p为校验位。
校验规则是:

  1. 对前17位数字的权求和 S=Sum(Ai*Wi),i=0,…,16
    Ai:表示第i位置上的身份证号码数字值
    Wi:表示第i位置上的加权因子
    Wi:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2
  2. 计算模 Y=mod(S,11)
  3. 通过模得到对应的校验码
    Y:0 1 2 3 4 5 6 7 8 9 10
    校验码:1 0 X 9 8 7 6 5 4 3 2

例如,如果得到Y为9则最后的校验位p应该为3。如果校验位不是3,则该身份证号码不正确。

  • 输入示例:
    110130197606175317

  • 输出示例:
    110130197606175317 正确.

  • 输入示例:
    110200197501175220

  • 输出示例:
    应为:11020019750117522X

#include <iostream>
#include <string>
using namespace std;int main()
{int wei[] = { 7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2 };char p[] = { '1','0', 'X', '9', '8', '7', '6', '5', '4', '3', '2' };string num;while (cin >> num) {int total = 0, i;for (i = 0; i < num.length() - 1; i++) total += (num[i]-'0') * wei[i];if (p[total % 11] == num[i])cout << num << " 正确" << endl;else cout << "应为: " << num.substr(0, 17) << p[total % 11] << endl;     }
}

2.

显示出如下数组中的所有元素,并使用二分查找法在数组中查找元素。
int a[]={-90,-32,12,16,24,36,45,59,98,120};

  • 输入输出示例
    -90 -32 12 16 24 36 45 59 98 120
    请输入所要查找的元素:24
    输出:第5个元素为24,比较次数为1
    请输入所要查找的元素:120
    输出:第10个元素,比较次数为4
    请输入所要查找的元素:6
    输出:查找失败 比较次数为3
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;int bi_search(int a[], int begin, int end, int value,int &cmp)
{if (begin > end)return -1;int m = (begin + end) / 2;cmp++;if (a[m] > value)bi_search(a, begin, m - 1, value, cmp);else if (a[m] < value)bi_search(a, m + 1, end, value, cmp);elsereturn m;
}int main()
{int a[] = { -90,-32,12,16,24,36,45,59,98,120 };for (int i = 0; i < 10; i++)cout << a[i] << ' ';cout << "请输入要查找的元素: ";int num, cmp;while (cin >> num) {cmp = 0;int res = bi_search(a, 0, 9, num, cmp);if (res == -1)cout << "查找失败!比较次数为" << cmp << endl;elsecout << "第" << res + 1 << "个元素!比较次数为" << cmp << endl;}
}

3.

输入学生个数以及每个学生的姓名和3门课程成绩:输出不及格学生的信息;按平均成绩排序,从高到低输出学生信息。

  • 输入示例:
    5
    zhaoyi 70 80 91
    zhanger 68 40 90
    zhangsan 60 70 80
    lisi 70 80 90
    wangwu 52 70 100
  • 输出示例:
    *name: zhanger score:68 40 99
    *name: wangwu score:52 70 100
    [1] name:zhaoyi 70 80 91
    [2] name:lisi 70 80 90
    [3] name:wangwu 52 70 100
    [4] name:zhangsan 60 70 80
    [5] name:zhanger 68 40 99

和2016年第一题几乎一样,就不写了

2017北理复试机试题相关推荐

  1. 2011年华科计算机考研复试机试题真题

    很好的资料哦,更多资料请访问王道论坛:www.cskaoyan.com 2011年华科计算机考研复试机试题真题:

  2. 华科计算机考研复试真题,华科计算机考研复试机试题(2000-2013)

    华科计算机考研复试机试题(2000-2013),c++实现,注本人参加过2014年华科上机考试,老师说机试时可以使用c语言,c++语言. 2000年 阶乘 #include #include #inc ...

  3. 华科计算机考研复试真题,华科计算机考研复试机试题【含参考代码】

    华科计算机考研复试机试题[含参考代码] (32页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 29.9 积分 华科历年复试机试题汇总上机考试.一般网站上公 ...

  4. 上交复试机试题Old BIll

    上交复试机试题Old BIll 问题描述: Among grandfather's papers a bill was found. 72 turkeys $_679_ The first and t ...

  5. 中南大学2019研究生复试机试题

    中南大学2019研究生复试机试题 机试题共六题 1.选球问题 题目描述 输入 输出 样例输入 样例输出 解决代码 2.模拟出入栈游戏 题目描述 输入 输出 样例输入 样例输出 解决代码 3.爬楼梯游戏 ...

  6. 2022年华东师范大学计科考研复试机试题-详细题解

    2023大厂真题提交网址(含题解): www.CodeFun2000.com(http://101.43.147.120/) 最近我们一直在将收集到的机试真题制作数据并搬运到自己的OJ上,供大家免费练 ...

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

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

  8. 北理python复试_北理复试及其初试超强总结(转)

    1 . 重视笔试:笔试的科目包括数字电子电路和模拟电子电路,其中题型包括填空. 判断和计算.总的笔试时间是 120 分钟,如果掌握得好一个小时左右就可以做完,题量不 小,覆盖的面比较广,但题目不难. ...

  9. 13-19年复旦大学计算机学院研究生复试机试题

    (不保证代码完全正确,自己敲的可能存在不完善的地方,请各位大佬发现后指出,谢谢!) 暂时结束. 试题列表 2019上机题 2018上机题 2017上机题 2016上机题 2015上机题 2014上机题 ...

  10. 2017北理c语言答案,c语言答案 北理工

    <北理工 C语言答案> 1 Hello world 让我们用C语言向世界问好. 最早的程序基本是这个样子的: 程序一: #include void main() { printf(&quo ...

最新文章

  1. 量子信息技术研究现状与未来
  2. C#设计模式--模板方法模式(学习Learning hard 设计模式笔记)
  3. 2017 Material design 第二章第六节《富有创造性的定制方案》
  4. mysql+json+检索_如何从mysql中检索JSON数据?
  5. java基础应用_Java基础(应用篇)
  6. 缓存 负载均衡_使用“针对临时工作负载优化”选项来保存计划缓存存储
  7. zepto tap “点透”研究
  8. matlab怎么根据公式建立三维模型,紧急!求助!用matlab建立三维copula模型,正用极大似然估计方法求copula函数参数...
  9. VB 中文乱码问题,以下方案可以试试
  10. 软件工程期末考试试题及答案(详细、经典)
  11. 美丽的秋天秋天是多么美丽呀!
  12. 关于三栏式布局的几种方式
  13. CMake入门1——CMake与VS编译器和nmake的结合使用
  14. 石家庄联通宽带DNS服务器地址
  15. 很傻很天真的问题: 什么是语法糖!
  16. Teigha的BlockTableRecord获取方法
  17. 用Python实现语音播报
  18. 10 Ways To NOT Suck At Programming
  19. java案例之制作系统
  20. matlab试判断稳定性,MATLABsimulink稳定性分析时域分析

热门文章

  1. 修改Flume-NG的hdfs sink解析时间戳源码大幅提高写入性能
  2. 小菜的系统框架界面设计-小菜用户权限管理软件开源大放送
  3. Xshell7连接VMware15虚拟机上的Ubuntu详细步骤
  4. VXLAN详解(一)
  5. 如何查看内核参数的说明文档
  6. NYOJ--975--关于521
  7. c c++ 宏定义中#, ##, #@的含义
  8. 22、redis中数据库默认是多少个db 及作用?
  9. Android aidl Binder框架浅析
  10. NodeJS 常用模块积累