题目来源:第10届蓝桥杯青少年组C++选拔赛
1、下面哪个密码最安全
A. 111111 B. 123456 C. qwerty D. Z2a8Q1
2、如果今天是星期六,再过60天是星期几?
A. 星期三 B. 星期四 C. 星期五 D. 星期六
3、90到100之间有几个素数?
A. 0 B. 1 C. 2 D. 3
4、下列几个32位IP地址中,书写错误的是( )
A. 162.105.128.2 B. 192.168.0.1
C. 256.256.129.1 D. 10.0.0.1
5、下列4种不同进制表示的数中,数值最小的是( )
A. 八进制52 B. 十进制数44
C. 十六进制2F D. 二进制101000
题目来源:第11届蓝桥杯青少年组C++国赛
6、在数组中,数组名表示(A).
A.数组第1个元素的首地址 B.数组第2个元素的首地址
C.数组所有元素的首地址 D.数组最后1个元素的首地址
7、下列叙述中正确的是(A).
A.顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的
B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构
C.顺序存储结构能存储有序表,链式存储结构不能存储有序表
D.链式存储结构比顺序存储结构节省存储空间
8、下列排序方法中,最坏情况下比较次数最少的是(D).
A.冒泡排序 B.简单的选择排序
C.直接插入排序 D.堆排序
9、下列表达式正确的是().
A. 9++ B. (x+y)++
C. c+++c+++c++ D.++(a-b--)
10、针对以下代码,判断下列说法哪个是正确的(C).
const char str1[]="abc";
const char str2[] ='abc";
const char *p1 ='abc";
const char *p2 ='abc";
A. str1和str2地址不同,P1和P2地址相同
B. str1和str2地址相同,P1和P2地址相同
C. str1和str2地址不同,P1和P2地址不同
D. str1和str2地址相同,P1和P2地址不同
题目来源:第11届蓝桥杯青少年组C++省赛
11、结构化程序所要求的基本结构不包括( B )。
A、顺序结构
B、GOTO()跳转
C、选择(分支)结构
D、重复(循环结构)
12、若定义int a=2,b=2,下列表达式中值不为4的是( A )
A.a*(++b)
B.a*(b++)
C.a+b
D.a*b
13、在下列选项中,不能输出100个整数的是( D )。
14、下列叙述中正确的是( B )。
A. 线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的
B. 线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构
C. 线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构
D. 上述三种说法都不对
15、小蓝打羽毛球实行积分赛制,获胜积5分,打平积2分,失败扣1分。已知小蓝在20场积分赛后积61分且有3场比赛打平,那么小蓝的胜率为:( C ) A. 48%
B. 55%
C. 60%
D. 75%
// 3平 12胜 5负
题目来源:第12届蓝桥杯青少年组C++选拔赛
16、表达式6-1的值是(A)。
A.整数5 B.字符5 C.表达式不合法 D.字符6
17、若二维数组a有n列,则在a[i][j]前元素个数为(B)。
A.i*n+j-1 B.i*n+j C.j*n+i D.i*n+j+1
18、以下叙述中正确的是(C)。
A.break语句只能用于switch语句体中。
B.continue语句的作用是:使程序的执行流程跳出包含它的所有循环。
C.break语句只能用在循环体内和switch语句体内。
D.在循环体内使用break语句和continue语句的作用相同。
19、按照“先进后出"原则组织数据的结构是(B)。(30分)
A.队列 B.栈 C.双向链表 D.二叉树
20、用0、1、2、3、4这5个数字,能组成多少个没有重复数字的多位偶数?()
A.144 B.147 C.160 D.163
解题分析:
五位数 24个
个位是零:4*3*2=24(依次为万位、千位、百位、十位)
四位数 60个
个位是零:4*3*2=24(依次为千位、百位、十位)
个位不是零:2*3*3*2=36(依次为个位、千位、百位、十位)
三位数 96个
个位是零:4*3*2
个位不是零:4*4*3*2
两位数 10个
个位是零:4*1
个位不是零:3*2
选择题模拟题部分(160题)
第一部分 C++基础知识
1、下列C++标点符号中表示行注释开始的是 C
A ) # B ) ; C ) // D ) }
2、下列字符串中可以用作C++标示符的是 A
A ) _256 B ) class C ) delete D ) 5char
3、下列关于C++函数的描述中正确的是 C
A ) 主函数是程序的入口,它是由用户定义的函数调用
B ) 函数是C++中面向对象程序设计框架的基本组成元素
C ) 函数在调用前必须先被声明 D ) 每个用户定义函数只能被其他函数调用一次
4、下列关于C++关键字的说法中正确的是 D
A ) 关键字是用户为程序中各种需要命名的“元素”所起的名字
B ) 关键字是对程序中的数据进行操作的一类单词
C ) 关键字是在程序中起分割内容和界定范围作用的一类单词
D ) 关键字是C++中预先定义并实现一定功能的一类单词
5、每个C++程序都必须有且仅有一个 B
A ) 预处理命令 B ) 主函数 C ) 函数 D ) 语句
6、下面关于对象概念的描述中, A 是错误的
A ) 对象就是C语言中的结构变量 B ) 对象代表着正在创建的系统中的一个实体
C ) 对象是一个状态和操作(或方法)的封装体 D ) 对象之间的信息传递是通过消息进行的
7、C++对C语言做了很多改进,下列描述中 D 使得C语言发生了质变,即从面向过程变成面向对象
A ) 增加了一些新的运算符 B ) 允许函数重载,并允许设置默认参数
C ) 规定函数说明必须用原型 D ) 引进类和对象的概念
8、下面关于类概念的描述中, D 是错误的
A ) 类是抽象数据类型的实现 B ) 类是具有共同行为的若干对象的统一描述体
C ) 类是创建对象的样板 D ) 类就是C语言中的结构体类型
9、C++语言是以 B 语言为基础逐渐发展而演变而成的一种程序设计语言
A ) Pascal B ) C C ) Basic D ) Simula67
10、C++语言中规定函数的返回值的类型是由 D
A ) return语句中的表达式类型所决定的 B ) 调用该函数式的主调用函数类型所决定的
C ) 调用该函数式系统临时确定的 D ) 在定义该函数式所指的数据类型所决定的
11、下列关于C++与C语言关系的描述中错误的是 C
A ) C++是C语言的超集 B ) C++是C语言进行了扩充
C ) C++和C语言都是面向对象的程序设计语言 D ) C++包含C语言的全部语法特征
12、下列字符串中可以用做C++标示符的是 A
A ) _521 B ) computer~1 C ) case D ) 3var
13、面向对象程序设计思想的主要特征中不包括 D
A ) 封装性 B ) 多态性 C ) 继承性 D ) 功能分解,逐步求精
14、下列C++标点符号中表示一条预处理命令开始的是 A
A ) # B ) // C ) } D ) ;
15、下列关于C++类的描述中错误的是 C
A ) 类与类之间可以通过一些手段进行通信和联络
B ) 类用于描述事物的属性和对事物的操作
C ) 类与类之间必须是平等的关系,而不能组成层次关系
D ) 类与类之间可以通过封装而具有明确的独立性
16、下列C++标点符号中表示一条语句结束的是 A
A ) ; B ) // C ) # D ) {
17、下列C++标点符号中表示复合语句结束的标记符是 C
A ) # B ) // C ) } D ) ;
18、下列C++标点符号中表示复合语句开始的标记符是 A
A ) { B ) // C ) } D ) ;
19、下列关键字中, B 即在C语言中使用,又在C++语言中使用
A ) inline B ) break C ) private D ) public
20、下列字符串中不可以用作C++标示符的是 C
A ) _521 B ) computer123 C ) int D ) flower
21、下列不正确的选项是 D
A ) C++语言是一种面向对象的程序设计语言,它支持面向对象思想中的3个主要特征
B ) 标点符号是在程序中起分割内容和界定范围作用的一类单词
C ) iostream是一个标准的头文件,定义了一些输入输出流对象
D ) 类与类之间不可以进行通信和联络
22、下列不正确的选项是 B
A ) 封装是一种信息隐藏技术
B ) 标识符是由字母、数字、下划线组成的字符串,必须以数字或下划线开头
C ) 编译是由源程序文件转换到目标文件的过程
D ) 一个C++程序可以认为是函数串
23、下列与流程控制有关的关键字是 A
A ) goto B ) static C ) int D ) sizeof
24、下列正确的选项是 A
A ) 继承是创建一个具有别的类的属性和行为的新类的能力
B ) C语言支持面向对象的程序设计
C ) 空白符是一种可以被编译的符号
D ) 标示符不宜过长,一般设定为16个字符
25、下列关于C++语言的发展说法错误的是 C
A ) C++语言起源于C语言 B ) C++语言最初被称为“带类的C”
C ) 在1980年C++被命名 D ) 在1983年C++被命名
27、下列表示引用的方法中, A 是正确的
已知:int k=1000;
A ) int &x=k; B ) char &y; C ) int &z=1000; D ) float &t=&k;
28、下列程序的执行结果为 A
#i nclude<iostream.h>
void mian( )
{
int n=10;
int* pn=&n;
int* &rn=pn;
(*pn ) ++;
cout<<"n="<<n<<endl;
(*rn ) ++;
cout<<”n=”<<n<<endl;
}
A ) n=11 n=12 B ) n=11 n=11
C ) n=10 n=11 D ) n=11 n=10
29、下列引用的定义中, B 是错误的
A ) int i; int &j=i; B ) int i; int &j; j=i;
C ) float i; float &j=i; C)char d; char &k=d;
30、 B 是给对象取了一个别名,他引入了对象的同义词
A ) 指针 B ) 引用 C ) 枚举 D ) 结构
篇幅有限 需要更多请评论区留言。