C++考级-三级模拟考试测试预习题_第1页
C++考级-三级模拟考试测试预习题_第2页
C++考级-三级模拟考试测试预习题_第3页
C++考级-三级模拟考试测试预习题_第4页
C++考级-三级模拟考试测试预习题_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

C++考级-三级模拟考试测试预习题全国青少年编程能力等级考试C++三级试卷C++编程一、单项选择题(共15题,每题3分,共45分)C3_1.下列代码的时间复杂度为()。

for(inti=1;i<=n;i++){

for(intj=1;j<=n;j++)

cout<<i+j<<"";

}A.O(1)B.O(n)C.O(n^2)(正确答案)D.O(nlogn)C3_2.设有100个已排好序的数据元素,采用折半查找时,最大比较次数为()。A.6B.7(正确答案)C.8D.9C3_3.如果开始时计算机处于小写输入状态,现在有一只小老鼠反复按照CapsLock、字母键A、字母键S、字母键D、字母键F的顺序循环按键,即CapsLock、A、S、D、F、CapsLock、A、S、D、F、……,屏幕上输出的第81个字符是字母()A.A(正确答案)B.SC.DD.a

C3_4.下列程序执行的结果是()。

#include<iostream>

usingnamespacestd;

intmain()

{

stringstr="hello";

str.append("world!")

cout<<str.length()<<endl;

return0;

}A.5B.6C.11D.12(正确答案)C3_5.在c++中,类的对象的公共数据成员可以使用直接成员访问运算符()来访问。A..(正确答案)B.:C.?D.-C3_6.执行下列代码,当输入7时,输出的结果是()。

#include<iostream>

usingnamespacestd;

intf(intn){

if(n==1)return1;

return2f(n-1)+1;

}

intmain(){

intvalue;

cin>>value;

cout<<f(value);

return0;

}A.7B.15C.127(正确答案)D.128C3_7.执行下列代码,当输入的10个数为1234578101213时,输出的结果是()。

#include<iostream>

usingnamespacestd;

constintN=11;

inta[N];

intmain(){

for(inti=1;i<=10;i++)

cin>>a[i];

intL=1,R=10,mid;

while(L<=R){

mid=(L+R)/2;

if(a[mid]>10)R=mid-1;

elseL=mid+1;

}

if(a[L]>10)cout<<L;

elsecout<<-1;

return0;

}A.8B.9(正确答案)C.10D.-1C3_8.下列函数的功能是进行排序,其使用的排序算法是()。

voidinsertSort(inta[],intn){

for(inti=2;i<=n;i++){

intidx=i,tmp=a[i];

for(intj=i-1;j>=1;j--){

if(a[j]>tmp){

idx=j;

a[j+1]=a[j];

}elsebreak;

}

a[idx]=tmp;

}

}A.选择排序B.插入排序(正确答案)C.快速排序D.冒泡排序C3_9.执行下列代码,输出的结果是()。

#include<iostream>

usingnamespacestd;

voidbubbleSort(inta[],intn){

for(inti=1;i<n;i++){

for(intj=1;j<=n-i;j++){

if(a[j]>a[j+1])

swap(a[j],a[j+1]);

}

}

}

intmain(){

inta[10]={1,10,9,6,7,8,3,5,4,2};

bubbleSort(a,9);

for(inti=1;i<=9;i++)

cout<<a[i]<<"";

return0;

}A.12345678910B.123456789C.2345678910(正确答案)D.1345678910C3_10.下列有关贪心算法的叙述中,不正确的是()。A.贪心算法只能给到局部最优解B.贪心算法总能给到最优解(正确答案)C.贪心算法一般算法简单D.贪心算法不需要回溯C3_11.定义strings="hello";下列函数中,判断字符串是否为空的是()。A.s.length()B.s.append()C.s.size()D.s.empty()(正确答案)C3_12.执行下列代码,当输入的字符串为abc12388asd时,输出的结果是()。

#include<iostream>

usingnamespacestd;

intmain(){

strings;

cin>>s;

intcnt=0;

for(inti=0;i<s.length();i++){

if(s[i]>='0'&&s[i]<='9')

cnt++;

}

cout<<cnt;

return0;

}A.5(正确答案)B.6C.9D.11C3_13.下图是一个无向图,采用深度优先的方法从1开始获得的顶点的遍历次序为()。

A.1->2->5->9->3->6->10->7->4->8(正确答案)B.1->2->5->3->6->7->4->8->9->10C.1->2->3->4->5->6->7->8->9->10D.1->4->3->2->8->7->6->5->10->9C3_14.采用广度优先的方法遍历下列二叉树从1开始获得的顶点的遍历次序为()。

A.1->2->3->4->5->8->6->7->9B.1->2->8->3->5->6->9->4->7(正确答案)C.1->2->3->4->5->6->7->8->9D.1->4->3->2->8->7->6->5->9C3_15.在类定义的外部,可以被访问的成员有()。A.所有类成员B.private的类成员C.public的类成员(正确答案)D.private或public的类成员二、多项选择题(共4题,每题4分,共16分)C3_16.下列有关C++的叙述中,不正确的是()。A.C++函数必须要有形参(正确答案)B.C++函数必须要有返回值(正确答案)C.C++程序中的变量名不能是关键字D.C++函数可以没有返回值C3_17.下列关于静态成员的描述中,()是正确的。A.静态成员可分为静态数据成员和静态成员函数(正确答案)B.静态数据成员定义后必须在类体内进行初始化C.静态数据成员初始化不使用其构造函数(正确答案)D.静态数据成员函数中不能直接引用非静态成员(正确答案)C3_18.下列关于排序的说法正确的是()。A.冒泡排序是不稳定的排序B.冒泡排序,选择排序都是基于比较的排序(正确答案)C.插入排序是不稳定的排序D.选择排序、快速排序、堆排序都是不稳定的排序算法(正确答案)C3_19.类的访问权限控制符包括()。A.private(正确答案)B.public(正确答案)C.protected(正确答案)D.class三、编程题(共3题,每题13分,共39分)C3_20.编写程序实现如下功能:

给定一个序列a1,a2,…,an,如果存在i<j并且ai>aj,那么我们称之为逆序对,求逆序对的数目。第1行输入一个整数n(n<=1000),接下去一行输入n个整数

样例1:

输入:

6

542631

输出:

11

样例2:

输入:

5

12345

输出:

0(答案:请设置答案)C3_21.编写程序实现如下功能:

给定一个由n(n<=100)位数字组成的不下降序列,通过二分查找法,查找数组中是否存在数字大于等于m,若存在则输出第一个大于等于m的数字所在的位置下标(下标从1开始起),若不存在则输出-1。第1行输入一个整数n,接下来一行有n个整数,第3行输入一个整数m。

样例1:

输入:

10

12345678910

9

输出:

9

样例2:

输入:

10

2468101214162830

32

输出:

-1

(答案:请设置答案)C3_22.编写程序实现如

温馨提示

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

评论

0/150

提交评论