1.
我们通常说的
“
内存
”
属于计算机中的( )。
A.
输出设备
B.
输
⼊
设备
C.
存储设备
D.
打印设备
【答案】
C
【考纲知识点】 计算机基础知识
【解析】本题属于考察计算机基础知识中的存储设备问题;内存是一种存储设备, 也可以考虑关联内存中的“存”字,选
C
。
2.
以下
C++
不可以作为变量的名称的是( )。
A. redStar
B. RedStar
C. red_star
D. red star
【答案】
D
【考纲知识点】 变量的定义与使用
【解析】本题属于变量命名规则问题。
C++
中的变量包括数字、字母和下划线。
D
选项中含有空格,因此选
D
。
3. C++
表达式
2 - 1 && 2 % 10
的值是( )。
A. 0
B. 1
C. 2
D. 3
【答案】
B
【考纲知识点】 基本运算
【解析】本题考察运算符优先级,算数运算符包括:
+,-,*,/,%
,优先级大于
&&。 2-1
等于
1,2%10
等于
2
,
1&&2
等于
1
,选
B
。
4.
下
⾯
C++
代码段执
⾏
后的输出是( )。
int a=3,b=4;
cout<<"a+b="<<a+b;
A. 3+4= 7
B. 3+4=7
C. a+b=7
D. a+b=a+b
【答案】
C
【考纲知识点】 变量的定义与使用、输入输出语句、基本运算
【解析】本题考察程序模拟,双引号和没有双引号。直接输出双引号里的内容, 计算
a+b
的结果,然后输出。选
C
。
5.
在
C++
语
⾔
中,
int
类型的变量
x
、
y
、
z
的值分别为
2
、
4
、
6
,
以下表达式的值为真的是( )。
A. x > y || x > z
B. x != z - y
C. z > y + x
D. x < y || !x < z
【答案】
D
【考纲知识点】 基本运算
【解析】本题考察算数运算符、比较运算符和逻辑运算符。比较运算符高于逻辑 运算符,例如
A
选项,先计算
x>y
和
x>z
,
x>y
结果
0
,
x>z
结果是
0,0||0 的结果 是
0
,因此
A
的表达式值为
0
。同理计算
BCD
选项,选
D
。
6.
对
int
类型的变量
a
、
b
、
c
,下列语句不符合
C++
语法是( )。
A. c += 5;
B. b = c % 2.5;
C. a = (b = 3, c = 4, b + c);
D. a -= a = (b = 6) / (c = 2);
【答案】
B
【考纲知识点】 基本运算
【解析】本题考察
C++
的语法知识点。
%
运算符,操作数只能是整数,
c%2.5 不 符合语法规则,因此选
B
。
7.
下
⾯
C++
代码执
⾏
后的输出是( )。
![](https://img-blog.csdnimg.cn/direct/d023b0dea86d4dba8e709a54065bddde.png)
A.
都是偶数
B.
都是奇数
C.
不都是偶数或奇数
D.
以上说法都不正确
【答案】
A
【考纲知识点】 选择结构、基本运算
【解析】本题考察程序模拟结果,考察
if
分支结构。
14
和
12
都是偶数,对
2 取 余结果都等于
0
,因此
A
选项正确。
8.
下
⾯
C++
代码执
⾏
后的输出是( )。
![](https://img-blog.csdnimg.cn/direct/0e7d8fd983094bc99b42f0f3c7e51f8b.png)
A.
都是偶数
B.
都是奇数
C.
不都是偶数或奇数
D.
以上说法都不正确
【答案】
C
【考纲知识点】 选择结构、基本运算
【解析】本题考察程序模拟结果,注意是考察的输出结果,输出结果不一定与事 实相符。首先
14
和
12
都是偶数,
14%2
的结果等于
0,12%2 也是一样,会进入第 2
个
if
判断,最终输出
C
选项。
9.
下
⾯
C++
代码执
⾏
后的输出是( )。
![](https://img-blog.csdnimg.cn/direct/ad75f050affa444885f64cad997ba680.png)
A. 0
B. 1
C. 2
D. 3
【答案】
A
【考纲知识点】 选择结构、基本运算
【解析】本题考察程序模拟结果,考察
if 语句和除法运算。整数除以整数的答案 还是整数,
7/5==1,7/3==2
,第
1
个
if
条件成立,输出
0
,选
A
。
10.
下
⾯
C++
代码段执
⾏
后的输出是( )。
![](https://img-blog.csdnimg.cn/direct/04927469f0d64fc18dc105df2189303c.png)
A. 1
B. 4
C. 5
D. 10
【答案】
C
【考纲知识点】 循环结构
【解析】本题考察
for
循环结构,循环执行了
5
次,
cnt
增加了
5
,答案选
C
。
11.
下
⾯
C++
代码执
⾏
后的输出是( )。
![](https://img-blog.csdnimg.cn/direct/76dbac8ee55f4a5996f69927275279eb.png)
A. 2
B. 4
C. 9
D. 10
【答案】
B
【考纲知识点】 循环结构
【解析】本题考察
for
循环结构,循环执行了
i=1,i=3,
共
2
次,注意
i+=2;cnt 增加 了
1+3
,答案选
B
。
12.
下
⾯
C++
代码执
⾏
后的输出是( )。
![](https://img-blog.csdnimg.cn/direct/c497219b537a419697f9178240449660.png)
A. 3
B. 4
C. 6
D. 7
【答案】
B
【考纲知识点】 循环结构、基本运算
【解析】本题考察
while
循环结构,循环执行了
n=5,n=3,n=1
共
3
次,
cnt 增加了
3
,最开始
cnt=1
,答案选
B
。
13.
下
⾯
C++
代码
⽤
于求正整数的所有因数,即输出所有能整除
⼀个正整数的数。 如,输
⼊
10
,则输出为
1
、
2
、
5
、
10
;输
⼊
12
,则输出为
1
、
2
、
3
、
4
、
6
、
12
;
输
⼊
17
,则输出为
1
、
17
。在横线处应填
⼊
代码是( )。
![](https://img-blog.csdnimg.cn/direct/de20f643025c437a977a11f9ffd4a0b3.png)
A. int i = 1; i < n; i + 1
B. int i = 1; i < n + 1; i + 1
C. int i = 1; i < n; i++
D. int i = 1; i < n + 1; i++
【答案】
D
【考纲知识点】 循环结构、选择结构
【解析】本题考察
for
循环结构,求一个正整数的所有因子,
1
和
n
是数字
n 的 因子,循环的终止条件
i<=n,
或者
i<n+1,B
和
D
选项符合。
B
选项中
i+1
,
i 的值不 能累加,会造成死循环,
D
选项正确。
14.
在下列代码的横线处填写( ),可以使得输出是正整数
1234
各位数字的
平
⽅
和。
![](https://img-blog.csdnimg.cn/direct/d44bdbc8236c44819d2055fcaaad2aca.png)
A. n / 10
B. (n / 10) * (n / 10)
C. n % 10
D. (n % 10) * (n % 10)
【答案】
D
【考纲知识点】 循环结构、基本运算
【解析】本题考察
for
循环结构,求各位数字的平方和,
BD
是求的平方和,
D 选 项可以分别求出各位上的数字,选
D
。
15.
执
⾏
以下
C++
语
⾔
程序后,输出结果是( )。
A. 1
B. 0
C. 120
D.
⽆
法确定
【答案】
A
【考纲知识点】 循环结构、基本运算
【解析】本题考察
for
循环结构,循环推出条件
n
赋值为
0,循环不会执行,输 出
s
原有值
1
。选
A
。
二、判断题(每题
2
分,共
20
分)
1.
早期计算机内存不够
⼤
,可以将字库固化在
⼀个包含只读存储器的扩展卡中 插
⼊
计算机主板帮助处理汉字。
【答案】正确
【考纲知识点】 计算机基础知识、计算机历史
【解析】本题计算机基础知识,计算机存储。
2.
神威
·
太湖之光超级计算机是中国
⾃主研制的超级计算机,在全球超级计算机 TOP500
排
⾏
榜中多次荣膺榜
⾸
。
【答案】正确
【考纲知识点】 计算机历史
【解析】本题计算机发展,超级计算机。
3. C++
表达式
int(3.14)
的值为
3
。
【答案】正确
【考纲知识点】数据类型
【解析】本题
C++
语言强制类型转换,将浮点型转换为整形,用
int()
格式。
4. C++
语句
cout<<(2,3,"23")
的输出为
2,3,23
。
【答案】错误
【考纲知识点】 输入输出语句
【解析】本题考察
C++
语言
—
逗号表达式,输出括号内最后一项内容。
5. C++
的循环语句
for (int i = 0; i <10; i += 2)
表
⽰
i
从
0
开始到
10 结 束但不包含
10
,间隔为
2
。
【答案】正确
【考纲知识点】 循环结构
【解析】本题考察
C++
循环知识,看
for
里面的条件,
i
初始值是
0
,每次增加
2, i
分别是
0,2,4,6,8,10
,到
10
退出循环。
6. C++
表达式
('1' + '1')
的值为
'2'
。
【答案】错误
【考纲知识点】 基本数据类型、基本运算
【解析】本题考察
C++
字符知识,字符相加是根据对应
ASCII 码值相加,‘1’
的 ASCII 值是
49
,
‘2’
的
ASCII
值是
50
,输出是
49+49
对应的字符,不是
50
。
7.
在
C++
语
⾔
中,
do-while
循环不可能导致死循环,但
while
有可能。
【答案】错误
【考纲知识点】 循环结构
【解析】本题考察
C++
循环知识,只要条件成立,都会导致死循环。
8.
在下
⾯
的
C++
代码中,由于循环中的
continue
是
⽆
条件被执
⾏
,因此将导致
死循环。
![](https://img-blog.csdnimg.cn/direct/710e182e8efd46f484dc9b7b94b11408.png)
【答案】错误
【考纲知识点】 循环结构
【解析】本题考察
C++
循环知识,循环变量会增加,等于
10
的时候退出循环。
9.
在
C++
代码中,不可以将变量命名为
cout
,因为
cout
是
C++
的关键字。
【答案】错误
【考纲知识点】 变量的定义和使用
【解析】本题考察
C++
知识,
cout
不是关键字,是一个类的对象。
10. C++
是
⼀
种
⾼
级程序设计语
⾔
。
【答案】正确
【考纲知识点】 计算机基础知识
【解析】本题考察
C++
语言知识,
c++
是一门高级程序设计语言。
三、编程题(每题
25
分,共
50
分)
1
、买
⽂
具
问题描述
开学了,
⼩
明来到
⽂
具店选购
⽂
具。签字笔
2
元
⼀⽀
,他需要
X
⽀
;记事本
5
元
⼀
本,他需要
Y
本;直尺
3
元
⼀
把,他需要
Z
把。
⼩
明
⼿⾥
有
Q
元钱。你通过
编程帮
⼩
明算算,他
⼿⾥
的钱是否够买他需要的
⽂
具。
输入描述
输
⼊
4
⾏
。
第
⼀⾏
包含
⼀
个正整数
X
,是
⼩
明购买签字笔的数量。约定
1
≤
X
≤
10
。
第
⼆⾏
包含
⼀
个正整数
Y
,是
⼩
明购买记事本的数量。约定
1
≤
Y
≤
10
。
第三
⾏
包含
⼀
个正整数
Z
,是
⼩
明购买直尺的数量。约定
1
≤
Z
≤
10
。
第四
⾏
包含
⼀
个正整数
Q
,是
⼩
明
⼿⾥
的钱数(单位:元)。
输出描述
输出
2
⾏
。如果
⼩
明
⼿⾥
的钱够买他需要的
⽂
具,则第
⼀⾏
输出
"Yes"
,第
⼆⾏
输
出
⼩
明会剩下的钱数(单位:元); 否则,第
⼀⾏
输出
"No"
,第
⼆⾏
输出
⼩
明
缺少的钱数(单位:元)。
样例输入 1:
1
1
1
20
样例输出 1
Yes
10
样例输入 2
1
1
1
5
样例输出 2
No
5
【题目大意】
1.
已知买一个签字笔、记事本、直尺的价格,输入要买的数量和总钱数,问是否
能够买到需要的数量。
【考纲知识点】
1.
变量的定义与使用、选择结构、基本运算、输入输出语句。
【解题思路】
1.
按题目要求定义好需要的变量,并实现输入;
2.
根据单价求出购买这些数量的需要总钱数;
3.
如果有的钱数大于等于需要的钱数,输出
“Yes”
和剩余的钱数;否则输出
“No”
和缺少的钱数。
【参考程序】
#include<iostream>
using namespace std;
int main(){
int x,y,z,q;
cin>>x>>y>>z>>q;
if(q-x*2-y*5-3*z>=0){
cout<<"Yes"<<endl;
cout<<q-x*2-y*5-3*z<<endl;
}else{
cout<<"No"<<endl;
cout<<x*2+y*5+3*z-q<<endl;
}
return 0;
}
2
、
⼩
明的幸运数
问题描述
所有个位数为
k
的正整数,以及所有
k
的倍数,都被
⼩
明称为
“k
幸运数
”
。
⼩
明
想知道正整数
L
和
R
之间(包括
L
和
R
) 所有
k
幸运数的和,你能帮帮他吗?
输入描述
输
⼊
3
⾏
。第
⼀⾏
包含
⼀
个正整数
k
,第
⼆⾏
包含
⼀
个正整数
L
,第三
⾏
包含
⼀
个
正整数
R
。约定
2≤k≤9
,
1≤L≤R≤1000
。
输出描述
输出
1
⾏
,符合题意的幸运数之和。
样例输入
1
7
1
10
样例输出
1
7
样例解释
1
1
和
10
之间共有
1
个
7
幸运数:
7
。因为
7
既是
7
的倍数,个位数
⼜
为
7
。因此,
结果为
7
。
样例输入
2
7
10
20
样例输出
2
31
样例解释
2
10
和
20
之间共有
2
个
7
幸运数:
14
和
17
。
14
是
7
的倍数,
17
的个位数为
7
。
因此,结果为
31
。
【题目大意】
1.
求
1-n
之间所有的数字是否是幸运数字。
【考纲知识点】
1.
变量的定义与使用、控制语句结构、逻辑运算、算术运算、输入输出语句等。
【解题思路】
1.
按题目要求定义好需要的变量,并实现输入;
2.
判断每个数字是否是幸运数字,各位是
7
或者是
7
的倍数;
3.
是的话就累加,最终输出汇总结果。
【参考程序】
#include<iostream>
using namespace std;
int main(){
int k,l,r,s=0;
cin>>k>>l>>r;
for(int i=l;i<=r;i++){
if(i%10==k||i%k==0) s+=i;
}
cout<<s;
return 0;
}