5335:[GESP202409一级] 客观题

文件提交:无需freopen 内存限制:128 MB 时间限制:1.000 S
评测方式:文本裁判
金币值:
命题人:
提交:0 解决:0

题目描述

**一.单选题(每题2分,共30分)** 1. 据有关资料, 山东⼤学于1972年研制成功DJL-1计算机, 并于1973年投入运⾏, 其综合性能居当时全国第三 位。 DJL-1计算机运算控制部分所使⽤的磁⼼存储元件由磁⼼颗粒组成, 设计存贮周期为2μs(微秒) 。 那么该磁⼼存储元件相当于现代计算机的 ( )。 - 内存 - 磁盘 - CPU - 显示器 2. C++程序执行出现错误, 不太常见的调试手段是 ( )。 - 阅读源代码 - 单步调试 - 输出执行中间结果 - 跟踪汇编码 3. 在C++中, 下列表达式错误的是 ( )。 - `cout << "Hello,GESP!" << endl; ` - `cout << 'Hello,GESP!' << endl; ` - `cout << """Hello,GESP!""" << endl; ` - `cout << "Hello,GESP!' << endl; ` 4. C++表达式 `10 - 3 * 2` 的值是 ( )。 - $14$ - $4$ - $1$ - $0$ 5. 在C++中, 假设N为正整数10, 则 `cout <<(N / 3 + N % 3)` 将输出 ( )。 - $6$ - $4.3$ - $4$ - $2$ 6. C++语句 printf("6%2={%d}", 6%2) 执⾏后的输出是 ( )。 - `"6%2={6%2}"` - ` 6%2={6%2}` - `0=0` - `6%2={0}` 7. 成功执⾏下⾯的C++代码, 先后从键盘上输⼊5回车和2回车, 输出是 ( )。 ```cpp cin >> a; cin >> b; cout << a + b; ``` - 将输出整数7 - 将输出52, 5和2之间没有空格 - 将输出5和2, 5和2之间有空格 - 执⾏结果不确定, 因为代码段没有显⽰a和b的数据类型 8. 下⾯C++代码执⾏后输出是 ( )。 ```c++ int Sum = 0; for (int i = 0; i < 10; i++) Sum += i; cout << Sum; ``` - $55$ - $45$ - $10$ - $9$ 9. 下⾯C++代码执⾏后输出的是 ( )。 ```cpp int N = 0; for (int i = 0; i < 10; i++) N += 1; cout << N; ``` - $55$ - $45$ - $10$ - $9$ 10. 下⾯C++代码执⾏后输出的是 ( )。 ```cpp int N = 0; for (int i = 1; i < 10; i +=2){ if (i % 2 == 1) continue; N += 1; } cout << N; ``` - $5$ - $4$ - $2$ - $0$ 11. 下⾯C++代码执⾏时输⼊ 14+7 后, 正确的输出是 ( )。 ```cpp int P; printf("请输入正整数P: "); scanf("%d", &P); if (P % 3 || P % 7) printf("第5行代码%d, %d", P % 3, P % 7); else printf("第7行代码%2d", P % 3 && P % 7); ``` - 第5⾏代码2, 0 - 第5⾏代码1, 0 - 第7⾏代码 1 - 第7⾏代码 0 12. 执⾏下⾯C++代码后得到的输出是 ( )。 ```cpp int count= 0, i, s; for (i = 0, s = 0 ; i < 20; i++, count++) s += i++; cout << s << " " << count; ``` - 190 20 - 95 10 - 90 19 - 90 10 13. 下⾯C++代码拟⽤于计算整数N的位数, ⽐如对 123 则输出 123是3位整数 , 但代码中可能存在bug。 下⾯ 有关描述正确的是 ( )。 ```cpp int N, N0, rc=0; cout << "请输入整数: "; cin >> N; N0 = N; while (N){ rc++; N /= 10; } printf("%d是%d位整数\n", N, rc); // L11 ``` - 变量N0占⽤额外空间, 可以去掉 - 代码对所有整数都能计算出正确位数 - L11标记的代码⾏简单修改后可以对正整数给出正确输出 - L11标记的代码⾏的输出格式有误 14. 下⾯的C++代码⽤于求连续输⼊的若⼲正五位数的百位数之和。 例如输⼊ 32488 25731 41232 0 , 则输 出 3个正五位数的百位数之和为13 。 有关描述错误的是 ( )。 ```cpp int M, Sum=0, rc=0; cout << "请输入正整数: "; cin >> M; while (M){ M = (M / 100 % 10); // L6 Sum += M; rc++; cin >> M; } cout << rc << "个正五位数的百位数之和为" << Sum; ``` - 执⾏代码时如果输⼊ 23221 23453 12345 11111 0 , 则最后⼀⾏Sum的值是 10 - 执⾏代码时如果输⼊ 2322 2345 1234 1111 0 , 程序也能运⾏ - 将代码标记为 L6 那⾏改为 M = (M % 1000 / 100); , 同样能实现题⽬ 要求 - 将代码标记为 L6 那⾏改为 M = (M % 100 / 10); , 同样能实现题⽬ 要求 15. 如果⼀个正整数N能够表⽰为X*(X+1)的形式, 这⾥称它是⼀个“兄弟数”。 例如, 输⼊6, 则输出“6是⼀个兄 弟数”。 下⾯C++代码⽤来判断N是否为⼀个“兄弟数”, 在横线处应填⼊的代码可从i)-iv)中选择, 则有⼏个能完成功能?( ) ```cpp int N; cin >> N; for(int i = 0; i <= N; i++) if(___________________) cout << N << "是一个兄弟数\n"; i) N==i*(i+1) ii) N==i*(i-1) iii) N/(i+1)==i iv) N/(i-1)==i ``` - $1$ - $2$ - $3$ - $4$ **二.判断题(每题2分,共20分)** 16. 小杨最近开始学习C++编程, ⽼师说C++是⼀门⾯向对象的编程语⾔,也是⼀门高级语⾔。 - 正确 - 错误 17. 在C++中, 表达式 10/4 和 10%4 的值相同, 都是整数2, 说明 / 和 % 可以互相替换。 - 正确 - 错误 18. N是C++程序中的整型变量, 则语句 scanf("%d", &N) 能接收形如正整数、 负整数和0输⼊, 但如果输⼊含 字母或带小数点数, 将导致⽆法执⾏。 - 正确 - 错误 19. 下⾯C++代码能够执⾏, 则将输出45 。 ```cpp for (int i = 0; i < 10; i++) Sum += i; cout << Sum; ``` - 正确 - 错误 20. 在C++代码中整型变量X被赋值为20.24, 则 cout << (X++, X+1) / 10 执⾏后输出的是 2.124 。 - 正确 - 错误 21. 下⾯C++代码执⾏后, 最后⼀次输出是10。 ```cpp for (int i = 1; i < 10; i+=3) cout << i << endl; ``` - 正确 - 错误 22. 在C++, break 语句通常与if语句配合使⽤。 ​ - 正确 - 错误 23. 在C++代码中, 不可以将变量命名为 five-star , 因为变量名中不可以出现 - (减号) 符号。 - 正确 - 错误 24. 在C++语⾔中, 整型、 实数型、 字符型、 布尔型是不同数据类型, 但这四种类型的变量间都可以⽐较⼤小。 - 正确 - 错误 25. C++中, 定义变量 int a=5,b=4,c=3 , 则表达式 (a

来源/分类