王道计算机考研机试指南
- 格式:docx
- 大小:239.09 KB
- 文档页数:95
2024年计算机考研408大纲一、考试背景1. 近年来,计算机行业迅速发展,对高素质的计算机人才需求日益增加。
2. 为了培养更多高水平的计算机专业人才,计算机考研成为了广大学子追逐的目标。
二、考试目的1. 考察考生对计算机基本理论、专业知识和技能的掌握能力。
2. 评价考生的综合分析、解决问题和创新设计能力。
3.选拔优秀的计算机专业研究生。
三、考试科目1. 计算机组成原理2. 计算机网络3. 数据结构4. 算法设计与分析5. 操作系统6. 数据库原理与应用7. 软件工程8. 计算机图形学9. 人工智能原理与技术10. 数据挖掘与大数据技术四、考试方式1. 笔试:选择题、填空题、简答题和计算题等。
2. 实验:包括机试和上机实验。
五、考试要求1. 良好的计算机基础理论知识。
2. 熟练掌握计算机编程语言。
3. 具备独立分析和解决计算机问题的能力。
4. 具备创新设计和完成计算机工程项目的能力。
5. 掌握相关领域最新进展和技术应用。
六、备考建议1. 确保掌握每门科目的基本理论和专业技能。
2. 参加相应的考前培训班和模拟考试。
3. 多做练习题,增加解题思路和分析能力。
4. 关注当下计算机行业的前沿技术和发展趋势。
5. 保持良好的心态和健康的体魄,积极备战考试。
总结:2024年计算机考研408大纲的设置旨在选拔更多高水平的计算机专业研究生,为我国计算机行业培养更多的高素质人才。
希望广大考生能够扎实备考,全面提升自己的计算机理论知识和技术能力,为自己的未来发展奠定坚实基础。
虽然计算机考研408的大纲内容在不断地发生变化和更新,但各部分的考试重点和要求基本保持一致。
在备考过程中,考生需要对各科目的知识体系进行深入、系统的学习,掌握相关的基础理论和专业技能。
一、计算机组成原理在计算机组成原理这一考试科目中,考生需要全面掌握计算机系统的各个模块,包括CPU、存储器、I/O系统等,并了解它们之间的工作原理和相互关系。
对于计算机的指令系统、数据表示、中断和异常处理等方面的知识也是备考重点。
2025年研究生考试考研计算机学科专业基础(408)模拟试卷(答案在后面)一、单项选择题(本大题有40小题,每小题2分,共80分)1、在计算机网络中,采用分片传输的目的是什么?A、提高数据传输的效率B、减少数据传输的延迟C、减少传输时的网络拥塞D、提高数据传输的可靠性2、在操作系统中的进程调度算法中,以下哪个算法是根据进程的优先级来决定进程执行顺序的?A、先进先出(FIFO)B、轮转调度(RR)C、短作业优先(SJF)D、优先级调度算法3、以下哪个说法是关于C语言中的数组的正确描述?A、数组在内存中必须是连续的存储空间B、数组的第一个元素可以通过“array[0]”或“*(array)”来访问C、数组名代表数组的起始地址,因此它可以被赋值给一个变量D、静态分配的数组在程序运行期间大小不可改变4、在下列数据结构中,属于非线性结构的是:A. 队列B. 栈C. 树D. 循环链表5、假设在一个二叉搜索树中插入关键字值为38的结点,该树的根节点关键字值为25,左子树根的关键字值为15,右子树根的关键字值为50,则插入后的二叉搜索树的高度(定义为空树的高度为-1)增加了多少?A. 0B. 1C. 2D. 无法确定6、在数据库系统中,事务的ACID特性指的是什么?A. 原子性、一致性、隔离性、持久性B. 可用性、一致性、独立性、持久性C. 原子性、兼容性、隔离性、持续性D. 原子性、一致性、独立性、持久性7、在计算机科学中,以下哪个概念描述了数据结构的基本单元,它包含了数据元素及其之间的逻辑关系?A. 数据项B. 数据元素C. 数据集合D. 数据表8、下列关于栈(Stack)的描述,哪个是正确的?A. 栈是一种先进先出(FIFO)的数据结构B. 栈是一种先进后出(LIFO)的数据结构C. 栈是一种只允许在表的一端插入和删除元素的数据结构D. 栈是一种只能顺序访问元素的数据结构9、在计算机网络中,以下哪个协议用于在传输层提供端到端的、可靠的、面向连接的服务?A. TCP(传输控制协议)B. UDP(用户数据报协议)C. IP(互联网协议)D. HTTP(超文本传输协议)10、关于计算机网络的定义,以下哪个选项是正确的?A、能够相互交换信息的计算机系统的集合B、连接在通信信道上的多台数字计算机C、通过某种形式的通信介质相互连接起来、并能按网络协议实现相互通信的系统D、自动执行预定义任务的计算机系统群组11、在计算机网络中,下列哪个是实现数据传输的物理媒介?A、路由器B、交换机C、光缆D、防火墙12、哪种网络互联设备既可以存储转发帧,又可以执行路径选择?A、集线器B、交换机C、路由器D、网桥13、在计算机科学中,下列哪个术语表示程序的动态执行过程?A. 源代码B. 编译代码C. 可执行代码D. 运行时栈14、关于数据加密标准(DES)的说法,正确的是?A. DES是一种对称加密算法B. DES的密钥长度为64位,实际上只有56位有效C. DES使用了64个S盒进行加密D. DES无法抵抗已知明文攻击15、以下哪种数据库索引结构能快速响应高基数的范围查询?A. B树索引B. 线索索引C. 闪存索引D. 位图索引16、在TCP/IP协议栈中,哪一层负责处理数据包从源地址到目的地址的路由选择?A. 应用层B. 传输层C. 网络层D. 数据链路层17、在操作系统中,当一个进程等待某些事件发生时(如I/O操作完成),该进程处于什么状态?A. 就绪状态B. 运行状态C. 阻塞状态D. 终止状态18、下列哪个选项不是数据库事务的ACID特性?A. 原子性(Atomicity)B. 一致性(Consistency)C. 分布性(Distribution)D. 持久性(Durability)19、以下关于计算机硬件系统的组成,错误的是()A. 输入设备B. 处理器C. 存储器D. 打印机 20、以下关于操作系统进程管理的描述,错误的是()A. 进程是程序的一次执行活动B. 进程状态包括创建、就绪、运行、阻塞和终止C. 进程调度是指按照某种策略将CPU分配给进程D. 进程同步是指进程之间通过某种机制进行协调21、以下关于计算机网络OSI模型的层次,错误的是()A. 物理层B. 数据链路层C. 网络层D. 应用层22、下列关于操作系统间虚拟化的描述,正确的是()。
计算机机试指南九度OJ机试题目解析复试机试参考1概述九度OJ是专门面向计算机考研机试的一款在线Online Judge系统,但很遗憾目前已经下线,本文档基于本人考研刷题经验结合网络搜索的原题和题解,汇总形成。
题目不全,希望以此为引入,方便计算机考研的同学参考使用,形成自己的汇总文档。
部分原题描述和代码收集于网络,如遇到代码有误或侵权可及时与我们联系。
题型分类:(1)模拟类型这种题目不难,看懂题目的意思,用代码模拟实现,需要练习和积累技巧。
(2)字符串处理很常见的提醒,所有OJ都有此种类型的题目,往往会结合其他提醒一起考,可简单可复杂。
查找、替换、排序、转换、存储等,有些库函数可以直接实现字符处理,比如整数判断,小写字母判断,查找等,也需要积累。
(3)栈和队列用这种数据结构的题目特征比较明显,比如栈先进后出,队列先进先出,队列常用于辅助bfs,dfs底层用到栈。
(4)各种排序如何记住各类排序,可从上层按方式分。
基于交换的,基于选择的,然后每个下面再分多个。
排序这里OJ题目一半不区分稳定性,只要能实现即可,归并排序是重点,归并的思想会穿插在做其他类型的题目中,另外各个语言下的库函数排序函数要记住,当排序不是作为主要考察对象时,可以直接用。
(5)数学问题高精度计算,大整数加减乘除,进制转换,公约数公倍数相关,质数相关,矩阵,日历等问题。
(6)数据结构相关链表指针操作,数组,各种数据结构的存储;树相关,比如建树,排序,遍历,哈夫曼树。
图相关:求最短路,求最小生成树,并查集,dfs,bfs。
dfs,bfs经常用于求迷宫问题。
(7)算法相关递归,地推,斐波那契数列,跳台阶,动态规划:序列,最小子序列,最长回文子串,背包问题等。
2模拟类型题目2.1输出梯形题目描述:输入一个高度h,输出一个高为h,上底边为h的梯形。
输入:一个整数h(1<=h<=1000)。
输出:h所对应的梯形。
样例输入:4样例输出:****************************提示:梯形每行都是右对齐的,sample中是界面显示问题来源:2001年清华大学计算机研究生机试真题(第II套)3字符串处理3.1字符串连接题目描述:不用strcat 函数,自己编写一个字符串链接函数MyStrcat(char dstStr[],charsrcStr[])输入:两个字符串,字符串由小写字母组成。
王道论坛王道论坛计算机考研机试指南王道论坛写在前面的话各位王道的小崽子们,今天你们考完初试了,感觉解放了吧?轻松了吧?无论结果如何,总算坚持到了最后。
但是,其实你的考研生活只刚刚走出了第一步,接下来会有初试成绩出来前的煎熬、分数线出来的煎熬、准备复试以及复试的煎熬以及录取结果出来前的煎熬,这些都远远比初试更折磨人,未来的两个月你会感觉到王道没有吓唬你们。
王道是个好姑娘,四年多的时光里陪伴了接近二十万计算机考研人,不离不弃。
今年不小心又压中一道算法题,说实话,王道的书里有那么多的题,知识点又只有那么多,总能瞎猫碰见死耗子吧?王道尊重的不是考研这个行业,而是你们这群执着的小崽子们的梦想!看着你们圆梦,我们内心充满了成就感。
初试考完了,是不是应该好好放松放松?是不是初试考得好,录取就肯定没有问题了?对不起,这个不是计算机专业研究生考试的规则。
目前已经有越来越多的高校采用上机考试的形式来考察考生的实际动手编程能力,并且机试在复试中所占的比例非常高,并且很多高校规定复试成绩不及格者,一律不得录取。
目前国内高校开展ACM 教学的高校非常少,而ACM 是目前所有高校机试所采取的唯一形式,因此提早开始准备和练习,对于一个完全没有接触过ACM 的计算机考研人来说,是必须的!为了方便各位道友练习机试,我们编写了本书,搭建了九度Online Judge (),并收集了全国各大高校的复试上机真题,希望能给大家复试上机考试提供强有力的支持。
你可以直接使用王道论坛的帐号进行登录。
如果您在使用过程中遇到问题,欢迎你到复试机试讨论专区发贴提出。
目前已经收录了我们能够收集到的各高校上机复试真题,欢迎大家继续向我们提供各高校上机真题,具体请站内信或者电子邮件联系浩帆()。
此外,华科的上机题我们经过了变型,将其中一些便于修改成OJ判题的题目收录进了我们的OJ。
考研其实没有什么诀窍,就是每天比别人早起一点,晚睡一点,比别人早准备一点,勤奋一点。
2025年研究生考试考研计算机学科专业基础(408)模拟试卷(答案在后面)一、单项选择题(本大题有40小题,每小题2分,共80分)1、在计算机网络中,OSI参考模型将网络体系结构分为七层,其中负责数据的表示转换,包括语法和表示字段的转换的是哪一层?A、应用层B、表示层C、会话层D、传输层2、在计算机组成原理中,内存地址的一种常见分配方式是基址变址寻址,请问以下哪一种寻址方式采用了基址变址寻址?A、直接寻址B、间接寻址C、基址变址寻址D、基址寻址3、在数据结构中,哪种数据结构最适合快速查找操作?A、顺序表B、链表C、二叉树D、哈希表4、关于哈希表的数据结构,下列描述错误的是:A. 使用 hash 函数将键值映射到表的地址空间中的位置B. 主要通过直接访问键值的哈希地址来访问记录,提高访问速度C. 当哈希函数的好与分布良好时,可以减少冲突,提高查找效率D. 哈希表的结构本身不保证任何排序顺序5、在以下数据结构中,以下哪个是稳定排序算法:A. 冒泡排序B. 快速排序C. 选择排序D. 堆排序6、以下哪个操作不会减少二叉搜索树(BST)的高度:A. 在 BST 中插入一个新节点B. 在 BST 中删除一个节点C. 从 BST 中查找一个节点D. 对 BST 进行中序遍历7、以下哪一种数据结构不是线性结构?A、栈B、队列C、哈希表D、数组8、在计算机网络中,传输层的主要职责是什么?A、封装数据为报文B、提供应用层与传输层间的通信服务C、在不同地理位置间传输数据D、数据链路的物理层传输9、当CPU执行操作数在内存中的指令时,需要进行几次访存才能完成指令的执行?A、1次B、2次C、3次D、次数取决于具体指令10、在计算机网络中,下列哪一项不属于OSI模型的七层协议?A. 物理层B. 链路层C. 网络层D. 应用层11、以下哪个协议主要用于互联网上的文件传输?A. HTTPB. FTPC. SMTPD. DNS12、在计算机编程中,伪代码的用途主要是?A. 编译执行B. 代码优化C. 设计思路D. 语言特性13、下列哪个操作系统是采用分时多任务处理技术的?A. Windows XPB. LinuxC. UNIXD. macOS14、以下哪个算法在最坏情况下具有O(n^2)的时间复杂度?A. 快速排序B. 归并排序C. 插入排序D. 选择排序15、在面向对象编程中,以下哪个概念描述了将数据和行为封装在一起?A. 继承B. 封装C. 多态D. 继承与多态16、以下哪个方法不是在Java中实现继承?A. extendsB. implementsC. interfaceD..tiles17、关于Java中的StringBuffer类,以下说法不正确的是:A. StringBuffer是线程不安全的B. StringBuffer是可变的C. StringBuffer可以保存null值D. StringBuffer继承自String类18、以下哪个命令在Linux系统中可以查看文件内容?A. cpB. mvC. catD. grep19、计算机中,以下哪个寄存器用于存储当前执行的指令的操作数?A、指令寄存器(IR)B、累加器(ACC)C、程序计数器(PC)D、栈指针寄存器(SP) 20、在计算机系统中,以下哪种设备属于I/O设备?A、中央处理器(CPU)B、内存(RAM)C、硬盘驱动器(HDD)D、电源适配器21、以下哪个技术不属于虚拟化技术?A、容器技术(如Docker)B、服务器虚拟化(如VMware)C、云计算(如AWS)D、操作系统虚拟化(如Linux内核的虚拟化)22、数据结构中,能够实现元素查找、插入和删除操作,并且在任意位置都可以进行这些操作的数据结构是:A. 二叉搜索树B. 链表C. 线性表D. 树23、下列哪种排序算法的平均时间复杂度为O(nlogn),且在最坏情况下仍保持这一时间复杂度:A. 冒泡排序B. 选择排序C. 快速排序D. 插入排序24、在计算机网络中,以下哪项不属于OSI七层模型:A. 物理层B. 数据链路层C. 路由层D. 应用层25、以下哪种编程语言被称为“面向对象编程”的鼻祖?A. C++B. JavaC. SmalltalkD. Python26、在计算机系统中,以下哪种存储器速度最快?A. 硬盘B. 内存C. 磁带D. 软盘27、以下哪个概念与“哈希表”的查找效率直接相关?A. 碰撞B. 覆盖C. 压缩D. 嵌套28、下列关于轻量级虚拟机(JVM)的描述中,哪一项是不正确的?A、轻量级虚拟机在翻译即时编程语言时使用,提高了程序运行效率。
研究生考试考研计算机学科专业基础(408)复习试题(答案在后面)一、单项选择题(本大题有40小题,每小题2分,共80分)1、题干:关于数据结构中二叉树的遍历方式,以下哪种说法是错误的?A、前序遍历首先访问根节点,然后递归访问左子树,最后递归访问右子树。
B、中序遍历首先递归访问左子树,然后访问根节点,最后递归访问右子树。
C、后序遍历首先递归访问左子树,然后递归访问右子树,最后访问根节点。
D、前序遍历和后序遍历的顺序可以随意交换。
2、题干:以下哪个排序算法的平均时间复杂度是O(nlogn)?A、冒泡排序B、插入排序C、快速排序D、选择排序3、题干:在计算机网络中,以下哪个协议属于应用层?A、IP协议B、TCP协议C、HTTP协议D、UDP协议4、在计算机系统中,下列哪个部件负责存储和提供程序运行时所需的指令和数据?A. 运算器B. 控制器C. 存储器D. 输入设备5、在C语言中,以下哪个数据类型的变量不能直接作为函数的参数传递?A. intB. floatC. doubleD. char6、在TCP/IP协议族中,负责将数据从发送方传输到接收方的协议是:A. IP协议B. TCP协议C. UDP协议D. HTTP协议7、在计算机网络中,以下哪个协议负责处理数据包的传输?A. HTTPB. FTPC. TCPD. UDP8、在计算机组成原理中,下列哪个部件负责将高级语言编写的程序转换成机器语言?A. 运算器B. 控制器C. 存储器D. 汇编器9、在数据库系统中,以下哪种数据结构用于实现数据的快速检索?A. 链表B. 树C. 数组D. 队列10、在计算机系统中,以下哪种存储器的访问速度最快?A. 硬盘(HDD)B. 固态硬盘(SSD)C. 内存(RAM)D. 硬盘阵列(RAID)11、以下哪个术语描述的是在计算机系统中,将一个物理设备分配给多个用户或进程使用的技术?A. 并行处理B. 虚拟化C. 并行存储D. 分布式处理12、在计算机网络中,以下哪个协议负责在应用层提供数据传输的完整性和顺序性?A. TCP(传输控制协议)B. UDP(用户数据报协议)C. IP(互联网协议)D. HTTP(超文本传输协议)13、计算机内存的容量通常以以下哪个单位来衡量?A. Bit(比特)B. Byte(字节)C. KB(千字节)D. GB(吉字节)14、在计算机中,下列哪个概念指的是将信息从一种形式转换成另一种形式的过程?A. 算法B. 编译C. 运算D. 转换15、以下哪种编程语言被广泛用于Web开发,尤其是在前端开发中?A. JavaB. C++C. PythonD. HTML/CSS16、题干:在计算机中,数据在内存和寄存器之间的传输通常采用以下哪种方式?()A. 串行传输B. 并行传输C. 分时传输D. 串并混合传输17、题干:下列关于计算机体系结构的描述,正确的是()A. 计算机体系结构主要描述计算机硬件的组成和连接方式B. 计算机体系结构主要描述计算机软件的组成和连接方式C. 计算机体系结构主要描述计算机硬件和软件的组成和连接方式D. 计算机体系结构主要描述计算机硬件的组成和软件的运行过程18、题干:在计算机系统中,以下哪种存储器属于随机存储器?()A. 硬盘B. 光盘C. 内存储器D. 磁带19、在C++中,以下哪个关键字用于实现多态?A. interfaceB. abstractC. virtualD. extends 20、以下哪种数据结构被称为“先进先出”(FIFO)队列?A. 链表B. 栈C. 队列D. 二叉树21、在Java中,以下哪个关键字用于实现接口?A. implementsB. extendsC. interfaceD. super22、以下哪个算法在最坏情况下具有线性时间复杂度?A. 快速排序B. 归并排序C. 插入排序D. 冒泡排序23、以下关于栈的描述,正确的是:A. 栈是一种先进先出(FIFO)的数据结构B. 栈是一种后进先出(LIFO)的数据结构C. 栈是一种随机访问的数据结构D. 栈是一种只允许插入和删除元素在首部或尾部的数据结构24、以下哪种算法适用于解决动态规划问题?A. 贪心算法B. 回溯算法C. 分而治之算法D. 动态规划算法25、以下关于数据结构中“二叉搜索树”(Binary Search Tree,BST)的描述,错误的是:A. 在BST中,每个节点的左子树上所有节点的值均小于该节点的值。
国家计算机三级网络技术机试攻略第一种:销售记录排序问题已知在文件IN.DA T中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。
其中:金额=单价*数量计算得出。
函数ReadDat()是读取这100个销售记录并存入结构数组sell中。
请编制函数SortDat(),其功能要求:按产品名称从小到大进行排列,若产品名称相等,则按金额从小到大进行排列,最终排列结果仍存入结构数组sell中,最后调用函数WriteDat()把结果输出到文件OUT5.DA T中。
部分源程序存在文件prog1.c中。
请勿改动主函数main()、读数据函数ReadDat()和输出数据函数WriteDat()的内容。
#include <stdio.h>#include <mem.h>#include <string.h>#include <conio.h>#include <stdlib.h>#define MAX 100typedef struct{char dm[5]; /*产品代码*/char mc[11]; /*产品名称*/int dj; /*单价*/int sl; /*数量*/long je; /*金额*/}PRO;PRO sell[MAX];void ReadDat();void WriteDat();void SortDat(){ /*答案部分*/int i,j;/*定义循环控制变量*/PRO ab;/*定义数据交换时的暂存变量(这里是结构体变量)*/for(i=0;i<99;i++) /*利用起泡法进行排序*/for(j=i+1;j<100;j++)if(strcmp(sell[i].mc,sell[j].mc)>0)/*产品名称从小到大排列*/{ab=sell[i];sell[i]=sell[j];sell[j]=ab;}else if(strcmp(sell[i].mc,sell[j].mc)==0) /*若产品名称相同*/if(sell[i].je>sell[j].je)/*则按金额从小到大进行排列*/{ab=sell[i];sell[i]=sell[j];sell[j]=ab;}}void main(){memset(sell,0,sizeof(sell));ReadDat();SortDat();WriteDat();}void ReadDat(){FILE *fp;char str[80],ch[11];int i;fp=fopen("IN.DA T","r");for(i=0;i<100;i++){fgets(str,80,fp);memcpy(sell[i].dm,str,4);memcpy(sell[i].mc,str+4,10);memcpy(ch,str+14,4);ch[4]=0;sell[i].dj=atoi(ch);memcpy(ch,str+18,5);ch[5]=0;sell[i].sl=atoi(ch);sell[i].je=(long)sell[i].dj*sell[i].sl;}fclose(fp);}void WriteDat(){FILE *fp;int i;fp=fopen("OUT5.DA T","w");for(i=0;i<100;i++){printf("%s %s %4d %5d %5d\n",sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je); fprintf(fp,"%s %s %4d %5d %5d\n", sell[i].dm,sell[i].mc,sell[i].dj,sell[i].sl,sell[i].je);fclose(fp);}第二种:四位数排序或筛选问题(1)——根据数位数字的关系排序已知数据文件in.dat中存有300个四位数,并已调用读函数ReadDat()把这些数存入数组a中,请编制一函数jsV alue(),其功能是:求出千位数上的数加个位数上的数等于百位数上的数加十位数上的数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()把结果输出到out.dat文件。
2024年研究生考试考研计算机学科专业基础(408)复习试题及解答一、单项选择题(本大题有40小题,每小题2分,共80分)1、在计算机网络中,路由器的主要作用是()。
A. 资源共享B. 数据转发C. 分布式处理D. 负载均衡答案:B解析:路由器是连接两个或多个网络的硬件设备,在网络间起网关的作用。
路由器的主要功能就是进行路由选择和数据包的转发,即选择最佳的路径,将数据包从一个网络转发到另一个网络。
因此,选项B“数据转发”是路由器的主要作用。
选项A“资源共享”是计算机网络的主要功能之一,但不是路由器的主要作用;选项C“分布式处理”是计算机网络中分布式系统的一个特点,与路由器的主要功能不符;选项D“负载均衡”是路由器可能具备的一种功能,但不是其主要作用。
2、在关系数据库中,若关系R和S具有相同的属性个数,且对应的属性取自同一个域,则R与S的并集是由属于R或属于S的元组组成的集合,其结果关系()。
A. 仍属于RB. 仍属于SC. 既属于R又属于SD. 既不属于R也不属于S答案:D解析:在关系数据库中,若两个关系R和S具有相同的属性个数,且对应的属性取自同一个域,则它们可以进行并集操作。
R与S的并集是由属于R或属于S(或两者都属于)的元组组成的集合。
然而,这个并集的结果关系并不直接属于R或S,因为并集操作会生成一个新的关系,它可能包含R和S中所有的元组,也可能只包含部分元组(如果R和S有共同的元组,则这些元组在并集中只会出现一次)。
因此,选项D“既不属于R也不属于S”是正确的。
3、在C语言中,若有以下定义和语句:int a[10]={1,2,3,4},p=a;p++;则p的值是()。
A. 1B. 2C. 3D. 4答案:B解析:在C语言中,数组名代表数组首元素的地址。
因此,int a[10]={1,2,3,4},p=a; 这行代码定义了一个整型数组a,并初始化了前四个元素为1、2、3、4,然后定义了一个整型指针p,并将它初始化为指向数组a的首元素。
考研计算机做真题指南攻略考研计算机真题找不足外加好心态1.冲刺阶段复习方法对考生来说,冲刺阶段应该明确:计算机考试科目的重难点、考点分布、命题趋势、考查风格;题型种类、题量比例;各题型解题技巧、各科目解题技巧、做题时间分配比例等等考试规律与应试技点。
此外,考生在掌握计算机学科的基本点、重点和难点之后,更要具有一定的实际解决问题的综合能力。
首先,在巩固已有的知识点的同时,找出自己的不足,并想尽办法弥补。
冲刺阶段,是我们最后的一场战役。
要坚定信念,打好这场仗。
我们要对计算机理论和基本知识点进行梳理、总结和归纳。
并对自己很熟悉的知识点进行巩固,而对于自己不太熟悉的计算机知识要进行“扫盲”运动。
比如,如果对数据结构这方面知识很熟悉的话,可以花比较少的时间达到一个巩固的目的;如果对计算机网络等方面的知识不熟悉的话,要花相对来说比较多的时间复习,达到一个全面的梳理和巩固知识点的目的。
其次,真题不可或缺,反复做真题,并且也要进行大量的练习。
计算机理论知识固然重要,但是计算机更注重的实践。
因此我们要把理论与实践相结合。
因此,在对知识点进行了梳理巩固之后,我们要开始进行实战训练,通过做大量的题,来找到自己的薄弱点,找到自己的陌生点和死角。
再从这些点回到书中,再进行复习,这样循环往复,一定会有号的效果。
此外,一定要注重我们的历年真题。
在复习的过程中,要把真题做三遍以上是必须的。
真题之所以为真题,是因为它的价值。
在分析真题的过程中,针对真题中所出现的问题,找原因,找到正确地解题方法。
最后,感知考察范围,复习重点章节,适当模拟。
在做了那么多的计算机练习题之后,我们应该会在自己的脑海中有一个大致的考试范围的感知,应该明白哪些是侧重要考的,哪些是不经常的。
这不意味着可以偷懒,但可以做到心里有数。
在感知之后,我们要重点复习经常考到的重要知识点。
针对重要的计算机知识点,可以有针对地做相对多一点的题,这样有利于学习效果的巩固。
此外,还可以参考一些计算机专业较强的高校的考试题目,进行补充学习。
Word版王道计算机考研机试指南王道论坛王道论坛计算机考研机试指南王道论坛写在前面的话各位王道的小崽子们,今天你们考完初试了,感觉解放了吧?轻松了吧?无论结果如何,总算坚持到了最后。
但是,其实你的考研生活只刚刚走出了第一步,接下来会有初试成绩出来前的煎熬、分数线出来的煎熬、准备复试以及复试的煎熬以及录取结果出来前的煎熬,这些都远远比初试更折磨人,未来的两个月你会感觉到王道没有吓唬你们。
王道是个好姑娘,四年多的时光里陪伴了接近二十万计算机考研人,不离不弃。
今年不小心又压中一道算法题,说实话,王道的书里有那么多的题,知识点又只有那么多,总能瞎猫碰见死耗子吧?王道尊重的不是考研这个行业,而是你们这群执着的小崽子们的梦想!看着你们圆梦,我们内心充满了成就感。
初试考完了,是不是应该好好放松放松?是不是初试考得好,录取就肯定没有问题了?对不起,这个不是计算机专业研究生考试的规则。
目前已经有越来越多的高校采用上机考试的形式来考察考生的实际动手编程能力,并且机试在复试中所占的比例非常高,并且很多高校规定复试成绩不及格者,一律不得录取。
目前国内高校开展ACM教学的高校非常少,而ACM是目前所有高校机试所采取的唯一形式,因此提早开始准备和练习,对于一个完全没有接触过ACM的计算机考研人来说,是必须的!为了方便各位道友练习机试,我们编写了本书,搭建了九度OnlineJudge (),并收集了全国各大高校的复试上机真题,希望能给大家复试上机考试提供强有力的支持。
你可以直接使用王道论坛的帐号进行登录。
如果您在使用过程中遇到问题,欢迎你到复试机试讨论专区发贴提出。
目前已经收录了我们能够收集到的各高校上机复试真题,欢迎大家继续向我们提供各高校上机真题,具体请站内信或者电子邮件联系浩帆()。
此外,华科的上机题我们经过了变型,将其中一些便于修改成OJ判题的题目收录进了我们的OJ。
考研其实没有什么诀窍,就是每天比别人早起一点,晚睡一点,比别人早准备一点,勤奋一点。
王道论坛王道论坛计算机考研机试指南王道论坛写在前面的话各位王道的小崽子们,今天你们考完初试了,感觉解放了吧轻松了吧无论结果如何,总算坚持到了最后。
但是,其实你的考研生活只刚刚走出了第一步,接下来会有初试成绩出来前的煎熬、分数线出来的煎熬、准备复试以及复试的煎熬以及录取结果出来前的煎熬,这些都远远比初试更折磨人,未来的两个月你会感觉到王道没有吓唬你们。
王道是个好姑娘,四年多的时光里陪伴了接近二十万计算机考研人,不离不弃。
今年不小心又压中一道算法题,说实话,王道的书里有那么多的题,知识点又只有那么多,总能瞎猫碰见死耗子吧王道尊重的不是考研这个行业,而是你们这群执着的小崽子们的梦想!看着你们圆梦,我们内心充满了成就感。
初试考完了,是不是应该好好放松放松是不是初试考得好,录取就肯定没有问题了对不起,这个不是计算机专业研究生考试的规则。
目前已经有越来越多的高校采用上机考试的形式来考察考生的实际动手编程能力,并且机试在复试中所占的比例非常高,并且很多高校规定复试成绩不及格者,一律不得录取。
目前国内高校开展ACM 教学的高校非常少,而ACM 是目前所有高校机试所采取的唯一形式,因此提早开始准备和练习,对于一个完全没有接触过ACM 的计算机考研人来说,是必须的!为了方便各位道友练习机试,我们编写了本书,搭建了九度Online Judge (),并收集了全国各大高校的复试上机真题,希望能给大家复试上机考试提供强有力的支持。
你可以直接使用王道论坛的帐号进行登录。
如果您在使用过程中遇到问题,欢迎你到复试机试讨论专区发贴提出。
目前已经收录了我们能够收集到的各高校上机复试真题,欢迎大家继续向我们提供各高校上机真题,具体请站内信或者电子邮件联系浩帆()。
此外,华科的上机题我们经过了变型,将其中一些便于修改成OJ判题的题目收录进了我们的OJ。
考研其实没有什么诀窍,就是每天比别人早起一点,晚睡一点,比别人早准备一点,勤奋一点。
考研离我已经很远了,同时我也坚信一个写不出合格代码的计算机专业的学生,即使考上了研究生,无非也只是给未来失业判个缓期执行而已。
小崽子们,要忠实于自己心底的梦想,勇敢地坚持下去,而当下,请开始准备复试吧,熬过这两个月,一切就都好了。
第1章从零开始一机试的意义众所周知,机试是计算机考研当中非常重要的一个环节。
在越来越注重实践动手能力的今天,越来越多的知名高校在计算机研究生招生考试当中采用了机试的形式,通过这种考试手段来考察考生分析问题并利用计算机程序解决问题的能力。
通过机试,可以考察一个考生从实际问题当中抽象得出数学模型的能力,利用所学的计算机专业知识对该模型进行分析求解的能力,以及利用计算机编程语言,结合数据结构和算法真正解决该实际问题的能力。
所以,我们在准备机试的过程中要特别注意以下几个方面:1、如何将一个实际问题抽象成数学问题。
例如将高速公路网抽象成带权图,这就是一种简单的、直接的抽象。
2、如何将我们所学的计算机专业知识运用到解决抽象出来的数学模型上去。
这就要求我们在脑子里事先熟知一些常用的数据结构和算法,再结合模型求解的要求,很快地选择合适的编程思想来完成算法的设计。
甚至可以利用一些经典算法特征,加入一些自己的优化,使得编写的程序更优雅、更高效(当然这是建立在充分理解经典算法的基础上)。
3、如何将我们为解决该数学模型所设计的算法编写成一个能被计算机真正执行的计算机程序。
我们认为,关于这个能力的定义有三个层次:1)会编写(默写)一些经典算法的程序代码。
2)能够将自己的想法或设计的算法转换为程序代码。
3)能够使得自己编写的程序在大量的、多种多样的、极限的测试数据面前依旧正常完成功能(程序的健壮性)。
我们在准备机试的训练过程中,就要依次经历这三个层次,从而最后能够在实际考试当中取得理想的成绩。
本教程从分析经典机试真题出发,引入近几年频繁被考察的数据结构和算法,利用C/C++语言讲解例题,并加以一些相关知识的扩展,希望在读者准备计算机考研机试的过程中充当指引者的角色。
同时,由于笔者自身实力的限制以及编写时间的不足,教程中难免存在一些疏漏和错误,也欢迎读者提出、指正。
二机试的形式绝大部分机试所采用的形式,归结起来可以概括为:得到题目后,在计算机上完成作答,由计算机评判并实时告知结果的考试过程。
机试考试中的问题往往有五部分组成。
首先是问题描述,问题描述描述该问题的题面,题面或直接告知考生所要解决的数学问题或给出一个生活中的实际案例,以待考生自己从中抽象出所要解决的数学模型。
第二是输入格式,约定计算机将要给出的输入数据是以怎样的顺序和格式向程序输入的,更重要的是它将给出输入数据中各个数据的数据范围,我们通过这些给出的数据范围确定数据的规模,为我们设计算法提供重要依据。
第三是输出格式,明确考生将要编写的程序将以怎样的顺序和格式向输出输出题面所要求的答案。
第四第五部分即输入、输出数据举例(Sample)。
好的Sample 不仅能为考生提供一组简单的测试用例,同时也能明确题意,为题面描述不清或有歧义的地方做适当的补充。
另外我们也要特别注意,题目中给定的两个重要参数:1、时间限制。
2、空间限制。
这两个重要的参数限定了考生提交的程序在输出答案之前所能耗费的时间和空间。
我们来看一个典型的题目描述,从而了解机试题的问题形式。
例计算A+B (九度OJ 题号:1000)时间限制:1 秒内存限制:32 兆特殊判题:否题目描述:求整数a,b 的和。
输入:测试案例有多行,每行为a,b 的值,a,b 为int 范围。
输出:输出多行,对应a+b 的结果。
样例输入:124569样例输出:3915通过该例,我们基本明确了机试试题的问题形式,以及问题各部分所起到的作用。
这里补充解释一下所谓特殊判题(Special Judge)的含义,特殊判题常被应用在可能存在多个符合条件的答案的情况下,若评判系统采用了特殊判题,那么系统只要求输出任何一组解即可;若系统对该题并没有采用特殊判题,那么你必须严格按照题目中对输出的限定输出对应的答案(如输出字典序最小的解)。
得到题目后,考生在计算机上立即编写程序,确认无误后,将该程序源代码提交给评判系统。
评判系统将考生提交的源代码编译后,将后台预先存储的输入测试数据输入考生程序,并将该程序输出的数据与预先存储在评判系统上的“答案”进行比对得出结果。
评判系统评判考生程序后,实时地将评判结果返回考生界面,考生可以根据该结果了解自己的程序是否被评判系统判为正确,从而根据不同的结果继续完成考试。
三评判结果本节将对评判系统评判考生提交程序后返回的结果做详细的说明,并且针对不同的返回结果,对可能出现错误的地方作出初步的界定。
Accepted(答案正确):你的程序对所有的测试数据都输出了正确的答案,你已经得到了该题的所有分数,恭喜。
Wrong Answer(答案错误):评判系统测试到你的程序对若干组(或者全部)测试数据没有输出正确的结果。
出现该种错误后,一般有两种解决方向:如果对设计的算法正确性有较大的把握,那么你可以重点考虑代码健壮性,即是否存在某些特殊数据使程序出现错误,比如边界数据,比如程序中变量出现溢出。
另一种方向,即怀疑算法本身的正确性,那么你就需要重新考虑你的算法设计了。
Presentation Error (格式错误):评判系统认为你的程序输出“好像”是正确的,只是没有严格按照题目当中输出所要求的输出格式来输出你的答案,例如你忽略了题目要求在每组输出后再输出一个空行。
出现这种错误,往往预示着你离完全正确已经不远了,出现错误似乎只是因为多输出了一些空格、换行之类的多余字符而已。
但这不是绝对的,假如在排版题(后文会有介绍)中出现格式错误,那么有可能你离正确的答案仍然有一定的距离。
Time Limit Exceeded (超出时间限制):你的程序在输出所有需要输出的答案之前已经超过了题目中所规定的时间。
若这种结果出现在你的评判结果里,依然有两种方向可供参考:1、假如你确定算法时间复杂度能够符合题目的要求,那么依旧可以检查是否程序可能在某种情况下出现死循环,是否有边界数据可能会让你的代码不按照预想的工作,从而使程序不能正常的结束。
2、你设计的算法时间复杂度是否已经高于题目对复杂度的要求,如果是这样,那么你需要重新设计更加高效的算法或者对你现行的算法进行一定的优化。
Runtime Error (运行时错误):你的程序在计算答案的过程中由于出现了某种致命的原因异常终止。
你可以考虑以下几个要点来排除该错误:1、程序是否访问了不该访问的内存地址,比如访问数组下标越界。
2、程序是否出现了除以整数0,从而使程序异常。
3、程序是否调用了评判系统禁止调用的函数。
4、程序是否会出现因为递归过深或其他原因造成的栈溢出。
Compile Error (编译错误): 你提交的程序并没有通过评判系统的编译,可根据更详细的编译信息修改你的程序。
Memory Limit Exceeded (使用内存超出限制): 你提交的程序在运行输出所有的答案之前所调用的内存已经超过了题目中所限定的内存限制。
造成这种错误的原因主要有两个方面:1、你的程序申请过多的内存来完成所要求的工作,即算法空间复杂度过高。
2、因为程序本身的某种错误使得程序不断的申请内存,例如因为某种原因出现了死循环,使得队列中不断的被放入元素。
当然也千万别忽略自己的低级错误,比如在声明数组大小时多打了一个0。
Output Limit Exceeded (输出超出限制): 你的程序输出了过多的东西,甚至超出了评判系统为了自我保护而设定的被评判程序输出大小的最高上限。
一般来说该种错误并不常见,一旦出现了也很好找原因。
要么就是你在提交时忘记关闭你在调试时输出的调试信息(我经常输出DP 时的数组来动态的观察状态的转移);要么就是程序的输出部分出现了死循环,使得程序不断地输出而超出系统的限制。
以上几种结果就是评判系统可能会返回的几个最基本的结果。
若返回Accepted,则你可以获得该题的所有分数。
若返回其它错误,则根据不同的考试规则,你的得分将会有一定的差异。
若你参加的考试采用按测试点给分规则,你依然能够获得你通过的测试点(即该程序返回正确结果的那部分测试数据)所对应的分数;但是,若你参加考试采用所有数据通过才能得分的评分规则,那么很可惜,到目前为止你在这道题上的得分依旧是0 分。
假如评判结果显示你提交的程序错误的,你可以在修改程序后再次提交该题,直到获得满意的分数或者放弃作答该题。
四复杂度的估计本节将详细讨论题目中所给定的时间限定和空间限定对我们程序设计的指导作用。
如例所示,该题给予我们的程序 1 秒的运行时限,这也是最常见的时间限制(或最常见的时间限制数量级)。