NOIP2022年初赛普及组试题知识点分析_第1页
NOIP2022年初赛普及组试题知识点分析_第2页
NOIP2022年初赛普及组试题知识点分析_第3页
NOIP2022年初赛普及组试题知识点分析_第4页
NOIP2022年初赛普及组试题知识点分析_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

其次十届全国青少年信息学奥林匹克联赛初赛C++2022年一、快单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项)1.以下哪个是面对对象的高级语言( )。B.C++A.汇编语言 C.Fortran D.BasicB.C++【学问点】计算机语言根底常识【把握度】了解【学问分析】心,而对象是程序运行时刻的根本成分。语言中供给了类、继承等成分,有识认性、多态性、类别性和继承性四个主要特点。而面对对象只是一种编程思想。汇编语言:低级语言C++:面对对象高级语言Fortran:高级语言Basic:高级语言D.240次方⒉D.240次方A.2的10次方 B.2的20次方 C.2的30次方【学问点】计算机存储进制换算【把握度】把握【学问分析】1KB=1024B=210B1MB=1024KB=220B1GB=1024MB=230B1TB=1024GB=240BD.00111001⒊二进制数00100100和00010101的和是( )。A.00101000 B.001010100 C.01000101D.00111001【学问点】二进制运算【把握度】把握D.打印机⒋以下哪一种设备属于输出设备( )。A.扫描仪 B.键盘 C.D.打印机【学问点】计算机组成原理【把握度】把握【学问分析】硬件组成:掌握器(Control):掌握,调度程序、数据、地址,协调计算机各局部工作及内存与外设的访问等。运算器(Datapath):运算器的功能是对数据进展各种算术运算和规律运算,即对数据进展加工处理。存储器(Memory):存储器的功能是存储程序、数据和各种信号、命令等信息,并在需要时供给这些信息。输入设备(Inputsystem):外设,输入设备的作用是将程序、原始数据、文字、字符、掌握命令或现场采集的数据等信息输入到计算机。常见的输入设备有键盘、鼠标器、光电输入机、磁带机、磁盘机、光盘机等。输出设备(Outputsystem):输出设备与输入设备同样是计算机的重要组成局部,它把外算机的中间结果CRT、打印机、激光印字机、绘图仪及磁带、光盘机等。⒌以下对操作系统功能的描述最为完整的是( )。C.掌握和治理计算机系统的各种硬件和软件资源的使用A.负责外设与主机之间的信息交换 B.C.掌握和治理计算机系统的各种硬件和软件资源的使用D.将没有程序编译成目标程序【学问点】计算机操作系统【把握度】了解【学问分析】需要处理如治理与配置内存、打算系统资源供需的优先次序、掌握输入设备与输出设备、操作网络与治理文件系统等根本领务。操作系统也供给一个让用户与系统交互的操作界面。⒍CPU、存储器、I/O设备是通过( )连接起来的。B.总线A. 接口 C.掌握线 D.B.总线【学问点】计算机组成原理【把握度】了解【学问分析】总线〔Bus〕是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照计算机所传输的信息种类,计算机的总线可以划分为数据总线、地址总线和掌握总线,分别用来传输数据、数据地址和掌握信号。总线是一种内部构造,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共通路叫总线,微型计算机是以总线构造来连接各个功能部件的。A.RAM⒎断电后会丧失数据的存储器是( )。A.RAMB.ROM C.硬盘 D.光盘【学问点】计算机原理【把握度】把握【学问分析】RAMROM即只读内存,是一种只能读出事先所存数据的固态半导体存储器。比照手机中的RAM和ROM分别对应电脑的内存和硬盘。内存负责程序的运行以及数据交换,有了它电脑中的软件才能运行,⒏以下哪一种是属于电子邮件收发的协议( )。A.SMTPB.UDP C.P2P D.FTPA.SMTP【学问点】计算机网络协议【把握度】了解【学问分析】SMTP:SimpleMailTransferProtocol,简洁邮件传输协议UDP:UserDataProtocolTCP相对应的协议。它是面对非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去!TCP〔TransmissionControlProtocol,传输掌握协议〕是一种面对连接的、牢靠的、基于字节流的传输层通信协议。Ppin”命令TCP/IP通信是否正常,其实“ping”命令的原理就是向对方主机发送UDP数据包,然后对方主机确认收到数据包,假设数据包是否到达的消息准时反响回来,那么网络就是通的。P2P(PeertoPeer)对等计算机或对等网络。p2p的核心:P2P的核心是数据存储在客户本地,通过存储信息(名称、地址、分块)的查询,让终端之间直接数据传递。P2P网络让网络上的数据流量分散化,同时治理点不仅没有效劳容量的压力,而且只存储数据的索引与链接,不对数据本身负责,避开了版权与治理的麻烦。p2p网络实现的思想:P2P网络实际上是一种“无中心政府的P世界是你下载的同时,利用文件分块的技术,把你刚拥有的局部马上给别人共享,固然这种共享不必再经过你的允许,并且依据你的表现积分,鼓舞“好”人,嘉奖奉献,你帮了别人,别人就来帮你。由于很多P2PP2P步共享供给了根底。FTP:FileTransferProtocol,文件传输协议⒐以下选项中不属于图像格式的是( )。B.TXT格式JPEGB.TXT格式【学问点】计算机根底学问【把握度】了解【学问分析】

C.GIF格式D.PNG格式JPG,JPEG,PNGGIFTXTtextB.可随机访问任一元素⒑链表不具有的特点是( )。A.B.可随机访问任一元素C.插入删除不需要移动元素 D.所需空间与线性表长度成正比【学问点】数据构造—链表【把握度】把握【学问分析】〔链表中每一个元素称为结点O(1)的简单度,O(n)性表和挨次表相应的时间简单度分别是O(logn)O(1)。间,实现敏捷的内存动态治理。但是链表失去了数组随机读取的优点,同时链表由于增加了结点的指针域,空间开销比较大。链表最明显的好处就是,常规数组排列关联工程的方式可能不同于这些数据任意位置上的节点,但是不允许随机存取。链表有很多种不同的类型:单向链表,双向链表以及循环链表。链表可以在多种编程语言中实现。像LispScheme这样的语言的内建数据类型中就包含了链表的存取和操作。程序语言或面对对象语言,如C,C++Java依靠易变工具来生成链表。D.199⒒以下各无符号十进制整数中,能用八位二进制表示的数中最大的是( )。A.296 B.133 C.256D.199【学问点】二进制转化【把握度】把握【学问分析】无符号八位二进制能表示的十进制范围为0~255,超过则溢出C.256.256.129.1⒓以下几个32位IP地址中,书写错误的选项是( )。A.7 B.C.256.256.129.1【学问点】IP地址【把握度】理解【学问分析】

D.“IP0-126/128-191/192-223/224-239/240-255共五类,A、B、C、D、E类,国际上做出规ABC类,DEIP地址,与局域网内其他客户机通信。还可以承受DHCP自动猎取”⒔要求以下程序的功能是计算:s=1+1/2+1/3+...+1/10。#include<iostream>usingnamespacestd;intmain{intn;floats;s=1.0;for(n=10;n>1;n--)s=s+1/n;cout<<s<<endl;return0;}程序运行后输出结果错误,导致错误结果的程序行是( )。C.s=s+1/n;A.s=1.0; B.for(nC.s=s+1/n;【学问点】C++程序阅读【把握度】把握【学问分析】题目要求程序的功能是计算:s=1+1/2+1/3+...+1/10。

D.cout<<s<<endl;C++中整数与整数相除,结果照旧是整数,全部无法得到浮点数的答案⒕设变量x为float型且已赋值,则以下语句中能将x中的数值保存到小数点后两位,并将第三位四舍五入的是( )。A.x=(x*100)+0.5/100.0; B.x=(x*100+0.5)/100.0;C.x=(int)(x*100+0.5)/100.0;D.x=(xC.x=(int)(x*100+0.5)/100.0;【学问点】C++保存有效数【把握度】把握【学问分析】题目要求:保存到小数点后两位,并将第三位四舍五入(int)(x*100+0.5)/100.0;其中x*100+0.5是将小数后两位变成整数,再将第一位小数四舍五入,int强制转换,将小数局部全部去除,最终/100是将整数局部的最终两位变回小数⒖有以下程序#include<iostream>usingnamespacestd;intmain{ints,a,n;s=0;a=1;cin>>n;do{s+=1;a-=2;}while(a!=n);cout<<s<<endl;return0;}假设要使程序的输出值为2,则应当从键盘给n输入的值是( )。B.-3A.-1 C.-5 D.0B.-3【学问点】C++程序阅读【把握度】把握【学问分析】把握do{}while循环,do{}while2,逆向推出结果。2,说明do{}while执行了两次a1,每次do{}while24,n的值为-3⒗一棵具有5层的满二叉树中结点数为( )。A.31B.32 C.33 D.16A.31【学问点】二叉树—满二叉树【把握度】把握【学问分析】2n-1。⒘有向图中每个顶点的度等于该顶点的( )。C.入度和出度之和A.入度 B.C.入度和出度之和【学问点】图论—有向图【把握度】把握【学问分析】

D.入度和出度之差学问点:有向图中每个顶点的度等于该顶点的入度和出度之和。有向图的全部边都有方向,即确定了顶点到顶点的一个指向;而无向图的全部边都是双向的,即无向有向边组成。顶点的度是指和该顶点相连的边的条数入度(in-degree):以某顶点为弧头,终止于该顶点的弧〔边〕的数目称为该顶点的入度。出度(out-degree):以某顶点为弧尾,起始于该顶点的弧〔边〕的数目称为该顶点的出度。⒙设有100个数据元素,承受折半搜寻时,最大比较次数为( )。B.7A.6 C.8 D.10B.7【学问点】算法—折半〔二分〕【把握度】把握【学问分析】n个数折半查找,最大比较次数是(int)(log2n)+1。⒚假设有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值,c>0。s=a;for(b=1;b<=c;b++) s+=1;则与上述程序段功能等价的赋值语句是( )。B.s=a+B.s=a+c【学问点】C++程序阅读【把握度】把握【学问分析】

C.s=s+c D.s=b+cfor(b=1;b<=c;b++) s+=1;本质就是c有多大,s1C.图灵奖⒛计算机界的最高奖是( )。A.菲尔兹奖B.C.图灵奖【学问点】计算机史【把握度】了解【学问分析】

D.普利策奖如图:艾伦〔阿兰·麦席森·1966年由美国计算机协会M个奖项,有“计算机界的诺贝尔奖”之称,每年评比出一名计算机科学家,目前获得该奖项的华人学2022年图灵奖得主姚期智教授。现代计算机的根底是抽象的图灵机。如图:二、问题求解(25105分,没有局部分)把M个同样的球放到N(K表示)。18例如时在这里认为和是同一种放置方法问时。18【学问点】算法—递归函数【把握度】把握【学问分析】K=f(m,n)m个球,n00的方案数。m=0n=1时,f(m,n)=1m<n时,f(m,n)=f(m,m)m>n时,则有:1、含有0的方案数,即有至少一个袋子空着,即相当于f(m,n)=f(m,n-1)2、不含有0的方案数,即全部袋子都有球,那么先从m个球中抽取出n个出来,各个袋子分一个,考虑剩下的m-n个球放到n个袋子里的放法,即f(m,n)=f(m-n,n).而总的放法数目等于两者的和,即f(m,n)=f(m,n-1)+f(m-n,n),所以:f(8,5)=f(8,4)+f(3,5)=18如下图,图中每条边上的数字表示该边的长度,则从A到E的最短距离是11 。【学问点】图论—最短路径问题【把握度】把握【学问分析】我们可以用倒推的方法,求A 到E的最短距离。用k 来表示阶段。k=4,有d4(F,E)来表示F到E 的距离。f4(F)=6k=3,用d3(C,E)、d3(C,F)、d3(D,F)、d3(D,E)来表示有四条路。f3(C)=min{d3(C,E),d3(C,F)}=min{8,1+6}=7f3(D)=min{d3(D,F),d3(D,E)}=min{2+6,4}=4k=2,有f2(B)=min{d2(B,C),d2(B,D)}=min{1+7,7+4}=8;f2(G)=min{d2(G,C),d2(G,D)}=min{2+7,4+4}=8k=1,有f1(A)=min{d1(A,B),d1(A,G),d1(A,F)}=min{3+8,4+8,6+6}=11三、阅读程序写结果(4832分)1.#include<iostream>usingnamespacestd;intmain{inta,b,c,d,ans;cin>>a>>b>>c;d=a-b;a=d+c;ans=a*b;cout<<“Ans=“<<ans<<endl; return0;}9输入:2349输出:Ans=【学问点】C++编程根底【把握度】把握2.#include<iostream>usingnamespacestd;intfun(intn){if(n==1)return1;if(n==2)return2;returnfun(n-2)-fun(n-1);}intmain{intn;cin>>n;cout<<fun(n)<<endl;return0;}-11输入:7输出:-11【学问点】C++编程—递归【把握度】把握【学问分析】遇到递归问题时,可以自行绘制二叉树,分解问题3.#include<iostream>#include<string>usingnamespacestd;intmain{stringst;inti,len;getline(cin,st);len=st.size;for(i=0;i<len;i++)if(st[i]>=”a”&&st[i]<=”z”)st[i]=st[i]-”a”+”A”;cout<<st<<endl;return0;}HELLO,MYNAMEISLOSTMONKEY.输入:Hello,mynameisLostmonkey.HELLO,MYNAMEISLOSTMONKEY.输出:【学问点】C++编程【把握度】把握【学问分析】该题目是将全部小写字母转化为大写字母,是基于ASCII码的根本操作4.#include<iostream>usingnamespacestd;constintSIZE=100;intmain{intp[SIZE];intn,tot,i,cn;tot=0;cin>>n;for(i=1;i<=n;i++)p[i]=1;for(i=2;i<=n;i++){if(p[i]==1)tot++;cn=i*2;while(cn<=n){p[cn]=0;cn+=i;}}cout<<tot<<endl;return0;}输入:30输出:10【学问点】C++编程【把握度】把握【学问分析】该题目是求30以内素数的个数,学生需要把握三大构造的运行模式四、完善程序(228分)1.(数字删除)下面程序的功能是将字符串中的数字字符删除后输出。请填空。(312分)#include<iostream>usingnamespacestd;intdelnum(char*s){inti,j;j=0;for(i=0;s[i]!=”\0”;i++)if(s[i]<”0” ||s[i]>”9”){s[j]=s[i];j++ ;}return j ;}constintSIZE=30;intmain{chars[SIZE];intlen,i;cin.getline(s,sizeof(s));len=delnum(s);for(i=0;i<len;i++)cout<< s[i];cout<<endl;return0;}【学问点】C++编程—全面【把握度】把握【学问分析】题目要求:将字符串中的数字字符删除后输出,所以自定义函数delnum的主要功能是将数字删除的功能,delnum(char*s)形参是指针类型,那么也就是说,真实的操作会是在原地址上if(s[i]<”0” ||s[i]>”9”)题目要求:将字符串中的数字字符删除后输出,这个空则是推断字符是否为数字,没有字符是同时小于“0”又同时大于“9”的,而其中只能填或运算符s[j]=s[i]; j++ ;s[i]s[j]后,j所指向的内存应当向后移动len=delnum(s)说明自定义函数返回了一个值,len这个变量名也多是用来形容字符长度的,所以返回值为return j ;for(i=0;i<len;i++)cout<< s[i];是以此输出更改后的值2.(最大子矩阵和)mn列的整数矩阵,求最大的子矩阵和(子矩阵不能为空)。输入第一行包含两个整数mnmn个整数,描述整个矩阵。程序最终输出最大的子矩阵和。(4316分)比方在如下这个矩阵中:4 40-2-7092-62-41-41-180-2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论