一、单选题(每题 2 分,共 30 分) 1. 以下存储器中的数据不会受到附近强磁场干扰的是() A.硬盘 B.U 盘 C.内存 D.光盘 【答案】D 【考纲知识点】计算机的存储(二级) 【解析】光盘是光存储介质,是通过激光高温改变光盘涂覆层的形状来记录数据的,不会因为磁场而改变记录特性。硬盘是磁介质的数据存储设备,会直接受到磁场干扰。强磁场会在 U 盘和内存的电路中产生感应电流,可能会破坏存储器,导致数据受损。所以此题正确答案为 D。 2. 下列流程图,属于计算机的哪种程序结构?( )。
A. 顺序结构 B. 循环结构 C. 分支结构 D.数据结构 【答案】C 【考纲知识点】计算机基础结构(一级) 【解析】流程图根据是否按下空格键设置了两个分支,符合分支结构的特征,所以本题正确答案为 C。
3. 下列关于 C++语言的叙述,不正确的是()。 A. double 类型的变量占用内存的大小是浮动的 B. bool 类型的变量占用 1 字节内存 C. int 类型变量的取值范围不是无限的 D. char 类型的变量有 256 种取值 【答案】A 【考纲知识点】计算机的存储(二级) 【解析】在当前C++标准下,double类型通常占用8个字节,bool类型占用1个字节,int类型通常占用4个字节,char类型占用1字节,int类型的取值范围为
−231~231 − 1,char 类型的范围是-128~127,所以本题正确答案为A。 4. 下列关于 C++语言的叙述,不正确的是()。 A. 变量定义后,可以使用赋值语句改变它的值 B. 变量定义时,必须指定类型 C. 变量名必须为合法标识符 D.合法标识符可以以数字开始 【答案】D 【考纲知识点】变量的定义与使用(一级) 【解析】变量定义时,必须指定类型,且变量名必须为合法标识符(只能由字母,数字,下划线组成,且不能以数字开头),所以本题正确答案为D。 5. 以下哪个不是 C++语言的关键字? A. return B. max C. else D. case 【答案】B 【考纲知识点】程序设计语言的特点(二级) 【解析】本题属于考察 C++语言的关键字,max 是 C++中的一个库函数,不属于关键字,所以本题正确答案为 B。 6. 以下哪个不是 C++语言的运算符? A. \= B. /= C. -= D.!
【答案】A 【考纲知识点】算数运算(一级) 【解析】B 选项 a /= b,等价于 a = a / b;C 选项 a -= b 等价于a = a – b;D选项“!=”是不等于。A 选项\=并不是 C++语言的运算符,所以本题正确答案为A。 7. 如果 a 和 b 都是 char 类型的变量,下列哪个语句不符合C++语法? A. b = a + 1; B. b = a + '1'; C. b = 'a'++; D. b = a++; 【答案】C 【考纲知识点】基本数据类型(一级) 【解析】 A 选项,赋值号右侧表达式对 a 的 ASCII 码数值加 1,结果为int 类型,赋值给b时转换为 char 类型,也即比 a 的 ASCII 码值大 1 的对应字符。符合C++语法。B 选项,'1'为 char 类型常量,赋值号右侧表达式对 a 的ASCII 码数值加'1'的ASCII码数值,结果为 char 类型,赋值给 b。符合 C++语法。C 选项,'a'为 char 类型常量,常量不能进行++自增运算,不符合C++语法。D 选项,a 为 char 类型常量,可以进行++自增运算。该语句将a 变为ASCII 码值增加 1 的对应字符,并将变化前的 a 值赋值给 b。符合C++语法。所以本题正确答案为 C. 8. 如果 a、b、c 和 d 都是 int 类型的变量,则下列哪个表达式能够正确计算它们的平均值? A. (a + b + c + d) / 4 B. (a + b + c + d) % 4 C. (a + b + c + d) / 4.0 D. (a + b + c + d) % 4.0 【答案】C 【考纲知识点】算术运算(一级) 【解析】A 选项中所有参与计算的数都是整型,最终的计算结果也是整型,会默认向下取整,导致平均值不准确。B 选项计算的是 a、b、c、d 四个整数的和除以 4 的余数。C 选项为 a、b、c、d 四个整数的和除以 4.0 的结果,计算过程中会将 4.0 视为浮点数,整型与浮点型的计算结果默认为浮点型。D 选项“%”不能与浮点数参与运算,用法错误。所以本题正确答案为 C。
9. 如果 a 为 char 类型的变量,且 a 的值为'2',则下列哪条语句执行后,a 的值不会变为'3'? A. a = a + 1; B. a + 1; C. a = 1 + a; D. ++a; 【答案】B 【考纲知识点】算术运算(一级) 【解析】B 选项中并未对 a + 1 的结果进行任何处理,变量a 在计算过程中未发生改变,所以本题正确答案为 B。 10. 如果 a 为 int 类型的变量,且 a 的值为 9,则执行 a -= 3;之后,a 的值会是()。 A. 3 B. 6 C. 9 D.12 【答案】B 【考纲知识点】算术运算(一级) 【解析】a -= 3;等价于 a = a - 3; 表示把 a - 3 的计算结果重新赋值给a 变量,所以本题正确答案为 B。 11. 如果 a 和 b 均为 int 类型的变量,下列表达式能正确判断“a 等于0 或b 等于0”的是() A. (!a) || (!b) B. (a == b == 0) C. (a == 0) && (b == 0) D. (a == 0) - (b == 0) == 0 【答案】A 【考纲知识点】逻辑运算(一级) 【解析】A 选项中“!a”表示 a 等于 0,同理“!b”表示b 等于0,整个表示式表示 a 等于 0 或 b 等于 0。B 选项会先判断 a 变量和 b 变量是否相等(若a 和b相等,表达式的值为 1,若 a 和 b 不相等,表达式的值为 0),然后再判断表达式(a==b) 的值是否为 0。C 选项表示 a 等于 0 且 b 等于 0。D 选项表示表达式(a==0)减表达式(b==0)的计算结果是否为 0,表示 a 和 b 同时为 0 或a 和b 同时都不为0。所以本题正确答案为 A。 12. 如果 a 为 char 类型的变量,下列哪个表达式可以正确判断“a 是小写字母”? A. a <= a <= z B. a - 'a' <= 'z' - 'a' C. 'a' <= a <= 'z' D.a >= 'a' && a <= 'z' 【答案】D 【考纲知识点】逻辑运算(一级) 【解析】A 选项,a <= a 总是成立,因此表达式等价于1 <= z。B 选项等价于a<=‘z’。C 选项无论’a’ <= a 是否成立,表达式的值 0 或 1 都小于’z’。D 选项表示a大于等于’a’,并且 a 小于等于’z’,说明 a 变量的 ASCII 码在字符’a’和字符’z’对应的ASCII 码之间,即 a 变量为小写字母。所以本题正确答案为D。 13. 在下列代码的横线处填写(),使得输出是`50 10`。 #include<iostream>
using namespace std;
int main(){
int a=10;
int b=50;
___________;
b -= a;
a += b;
cout<< a <<" "<< b <<endl;
return 0;
}
A. a -= b B. a += b C. a = b - a D. a = b 【答案】C 【考纲知识点】基本运算(一级) 【解析】本题考察通过算术运算交换两个变量数值,可将选项带入进行计算,本题正确答案为 C。 14. 在下列代码的横线处填写(),可以使得输出是`5`。 #include<iostream>
using namespace std;
int main(){
int cnt = 0;
for(char ch = '1'; ch <= '9'; ch++)
if(____)//在此处填入代码
cnt++;
cout<<cnt<<endl;
return 0;
}
A. ch < '5' B. ch >= 5 C. ch >= '4' D. ch % 2 == 1 【答案】D 【考纲知识点】循环结构,字符型,ASCII 码,基本运算(二级)【解析】可以将选项带入排除 A,B,C 选项,需要注意B 选项中5 没有单引号,所以表示的不是字符’5’,D 选项中 ch 虽然是字符类型,但计算时会使用对应的ASCII 码%2,字符’1’到字符’9’之间,所有 ASCII 码中有5 个是奇数,所以本题正确答案为 D。 15. 执行以下 C++语言程序后,输出结果是()。 #include<iostream>
using namespace std;
int main(){
int n = 17;
bool isprime = true;
for(int i = 2;i <= n; i++)
if(n % i == 0)
isprime = false;
cout<< isprime <<endl;
return 0;
}
A. false B. true C. 0 D.1 【答案】C 【考纲知识点】循环结构,布尔型,基本运算 (二级)【解析】题目中 i 的循环范围是 2~n,即分别使用 n 对2~n 之间的所有数进行求余运算,由于 n 能够被自身整除,所以循环结束后 isprime 的值一定为false,但是 bool 类型在输出时不会输出 true 或 false,输出时只会输出1 或0,所以本题正确答案为 C。
(责任编辑:admin) |