小测试-03月28日
朝外信奥2队 3月28号课堂测试
答案版
一、单项选择题
内容覆盖计算机基础、C++语法、顺序结构、判断结构、循环结构。
1. 一个文件大小为 2 MB,在计算机中它等于( )Byte。
答案:C。1 MB = 1024 × 1024 Byte。
2. 下列软件中,属于操作系统的是( )。
答案:A。
3. 在 C++ 中,下面不能作为变量名的是( )。
答案:C。
int 是关键字。4. 在 C++ 中,表达式
17 % 5 + 3 * 2 的值是( )。答案:A。
17 % 5 = 2,3 * 2 = 6,总和为 8。5. 已知字符
'A' 的 ASCII 码是 65,字符 'a' 的 ASCII 码是 97,则表达式 'C' + 2 对应的字符是( )。答案:C。
'C' 的 ASCII 是 67,加 2 后是 69,对应 'E'。6. 下列 IP 地址中,属于 C 类地址的是( )。
答案:C。C 类地址第一段范围是 192 到 223。
7. 若要实现“当 x 是偶数时输出
yes,否则输出 no”,下面正确的是( )。答案:A。
8. 若
a = 17, b = 5,且 a、b 都是 int 类型,则表达式 a / b + a % b 的值是( )。答案:B。整数除法
17 / 5 = 3,余数为 2,总和为 5。9. 设
a = true,b = false,c = true,则逻辑表达式 (a && b) || (!b && c) 的值是( )。答案:A。前半部分是假,后半部分是真,所以整体为真。
10. 阅读下面代码,则该
for 循环一共进行了( )轮。for (int i = 1; i <= 6; i++) {
if (i == 2) continue;
if (i == 5) break;
}
答案:C。循环体进入了
i=1,2,3,4,5 共 5 轮,在第 5 轮时 break。11. 若要判断一个数 x 是否为偶数,条件应写成( )。
答案:C。
12. 设
int x = 3;,执行 int y = x++; 后,x 和 y 的值分别是( )。答案:B。后置自增先赋值再加 1。
13. 阅读下面代码,程序运行后的输出结果是( )。
int i = 1, s = 0;
while (i <= 4) {
s += i;
i++;
}
cout << s;
答案:C。累加
1+2+3+4=10。14. 阅读下面代码,程序运行后输出的结果是( )。
for (int i = 1; i <= 3; i++) {
for (int j = 1; j <= 3; j++) {
if (j == 2) break;
cout << i << j << ” “;
}
}
答案:B。每次内层循环到
j=2 就中断,所以只会输出 j=1 时的三项。15. 下列四个数中,值最小的是( )。
答案:C。其余三个都等于十进制 45,只有 44 最小。
16. 在 8 位二进制补码表示中,十进制数
-5 的补码是( )。答案:D。
5 的原码是 00000101,取反加一得到 11111011。17. 若要输出 1 到 5 这五个整数,循环变量 i 最常见的写法是( )。
答案:A。
18. 表达式
(3 > 2) && (5 < 4) 的值是( )。答案:B。前半真、后半假,且运算结果为假。
19. 下列关于顺序结构、判断结构、循环结构的说法中,正确的是( )。
答案:C。
20. 下列关于解释型语言和编译型语言的说法,正确的是( )。
答案:A。
二、阅读程序题
阅读下面程序,回答后面问题。
01 #include <iostream>
02 using namespace std;
03 int main() {
04 int x = 3, y = 5;
05 if (x < y) x = x + 2;
06 else x = x – 2;
07 cout << x << ” ” << y << endl;
08 return 0;
09 }
21. 程序运行后的输出结果是( )
答案:B。因为
3 < 5,所以 x 变成 5,输出 5 5。01 #include <iostream>
02 using namespace std;
03 int main() {
04 int s = 0;
05 for (int i = 1; i <= 4; i++) {
06 s += i;
07 }
08 cout << s << endl;
09 return 0;
10 }
22. 程序运行后的输出结果是( )
答案:C。输出
10。01 #include <iostream>
02 using namespace std;
03 int main() {
04 int n = 7;
05 cout << ((n % 3) * (n % 2) ? “A” : “B”);
06 return 0;
07 }
23. 程序运行后的输出结果是( )
答案:A。
7 % 3 = 1,7 % 2 = 1,乘积为 1,条件为真。01 #include <iostream>
02 using namespace std;
03 int main() {
04 int i = 1;
05 while (i <= 5) {
06 if (i == 4) break;
07 if (i % 2 == 0) {
08 i++;
09 continue;
10 }
11 cout << i;
12 i++;
13 }
14 return 0;
15 }
24. 程序运行后的输出结果是( )
答案:B。依次输出
1、3,到 i=4 时退出。01 #include <iostream>
02 using namespace std;
03 int main() {
04 int cnt = 0;
05 for (int i = 1; i <= 3; i++) {
06 for (int j = 1; j <= 2; j++) {
07 if (i + j > 3) cnt++;
08 }
09 }
10 cout << cnt << endl;
11 return 0;
12 }
25. 程序运行后的输出结果是( )
答案:B。满足
i+j>3 的有 (2,2)、(3,1)、(3,2),共 3 次。