#GESP1066. [GESP202409二级] 客观题
[GESP202409二级] 客观题
一.单选题(每题2分,共30分)
- 据有关资料, 山东⼤学于1972年研制成功DJL-1计算机, 并于1973年投⼊运行, 其综合性能居当时全国第三 位。 DJL-1计算机运算控制部分所使⽤的磁⼼存储元件由磁⼼颗粒组成, 设计存贮周期为2μs(微秒) 。 那么该磁心存储元件相当于现代计算机的
{{ select(1) }}
- 内存
- 磁盘
- CPU
- 显示器
- IPv4版本的因特⽹总共有( ) 个A类地址⽹络。
{{ select(2) }}
- 65000
- 200万
- 126
- 128
- 在C++中, 下列不可做变量的是 ( )。
{{ select(3) }}
- ccf-gesp
- ccf_gesp
- ccfGesp
- _ccfGesp
- 在C++中, 与 for (int i = 1; i < 10; i++) 效果相同的是 ( )。
{{ select(4) }}
for (int i = 0; i < 10; i++)
for (int i = 0; i < 11; i++)
for (int i = 1; i < 10; ++i)
for (int i = 0; i < 11; ++i)
- 在C++中,
cout << (5 / 2 + 5 % 3)
的输出是 ( )。
{{ select(5) }}
- 1
- 2
- 4
- 5
-
假定变量a和b可能是整型、 字符型或浮点型, 则下⾯C++代码执⾏时先后输⼊ -2 和 3.14 后, 其输出不可能 是( )。 [已知字符 '+'、 '-'、 '=' 的ASCII码值分别是43、 45和61]
cin >> a; cin >> b; cout << (a + b);
{{ select(6) }}
- 将触发异常
- 在C++代码中假设N为正整数, 则下⾯代码能获得个位数的是( ) 。
{{ select(7) }}
-
N % 10
-
N / 10
-
N && 10
-
以上选项均不正确
-
下⾯C++代码执⾏后的输出是 ( )。
int i; for (i = 0; i < 10; i++){ if (i % 2) break; cout << "0#"; } if(i==10) cout << "1#";
{{ select(8) }}
- 0#
- 1#
- 0#0#1
- 没有输出
-
执⾏下⾯C++代码并输⼊1和0, 有关说法正确的是
int a,b; cin >> a >> b; if(a&&b) cout << ("1"); else if(!(a||b)) cout << ("2"); else if(a || b) cout << ("3"); else cout << ("4");
{{ select(9) }}
-
下⾯C++代码执⾏后的输出是 ( )。
int loopCount = 0; for (int i = 1; i < 5; i += 2) loopCount += 1; cout << (loopCount);
{{ select(10) }}
-
下图是C++程序执⾏后的输出。 为实现其功能, 横线处应填⼊代码是 ( )。
712 3 3 4 5 4 5 6 7 5 6 7 8 9 6 7 8 9 10 11 7 8 9 10 11 12 13 ////////////////////////////// int lineNum; cin >> lineNum; for (int i= 1; i < lineNum+1; i++){ for(int __________________) cout << j << " "; cout << endl; }
{{ select(11) }}
j = i; j < i; j++
j = 1; j < i; j++
j = i; j < i*2; j++
j = i+1; j < i+i; j++
-
下⾯C++代码执⾏后输出逆序数, 如输⼊ 123 则输出 321 。 如输⼊ 120 则输出 21 。 横线处先后应填⼊的 代码是( )。
int N; cin >> N; int rst = 0; while (N){ ____________________; ____________________; } cout << (rst);
{{ select(12) }}
rst = rst * 10 + N % 10 N = N / 10
rst += N % 10 N = N / 10
rst = rst * 10 + N / 10 N = N % 10
rst += N / 10 N = N % 10
-
下⾯的C++代码⽤于输⼊学⽣成绩, 并根据⼈数计算出平均成绩, 有关说法错误的是 ( )。
float Sum = 0; // 保存总成绩 int cnt = 0; // 保存学生人数 while (1){ int score; cin >> score; if (score < 0) break; cnt += 1; Sum += score; } cout << "总学生数: " << cnt << "平均分: " << Sum/cnt;
{{ select(13) }}
- 代码 while (1) 写法错误
- 如果输⼊负数, 将结束输⼊, 并正确输出
- 如果输⼊的学⽣成绩含有⼩数, 程序将⽆法正常执⾏
- 变量 int score 初始值不确定, 但不影响程序执⾏
-
以下C++代码判断输⼊的正整数是否为质数, 如果该数字是质数, 则输出 YES , 否则输出 NO 。 质数是指仅 能被1和它本⾝整除的正整数。 请在横线上填写代码 ( )。
int num, i; cin >> num; for(i = 2; i < num; i++) if (__________){ cout << ("NO"); break; } if(i == num) cout << ("YES");
{{ select(14) }}
num % i
num % i == 0
num / i
num / i == 0
-
⼀个数如果能被某个数(比如7) 整除, 或者含有该数, 则说该数是某个数的相关数。 下⾯C++代码⽤于判 定输⼊的数与7是否有关。 下列说法错误的是 ( )。
int N, M; bool Flag = false; cin >> N; M = N; if (M % 7 == 0) Flag = true; while (!Flag && M){ if (M % 10 == 7){ Flag = true; break; } M/= 10; } if (Flag) cout << N << "与7有关"; else cout << N << "与7无关";
{{ select(15) }}
- 删除break语句不会导致死循环, 但有时会导致结果错误
- 删除 M /= 10 将可能导致死循环
- 删除 M = N 并将其后代码中的M变量改为N, 并调整输出同样能完成相关功能
- 删除 break 语句不会导致死循环, 但有时会影响效率
二.判断题(每题2分,共20分)
- ⼩杨最近开始学习C++编程, ⽼师说C++是⼀门⾯向对象的编程语⾔,也是⼀门⾼级语⾔。
{{ select(16) }}
- 正确
- 错误
- 在C++中, cout << (3, 4, 5) 可以输出 3 4 5 , 且每个输出项之间⽤空格分开。
{{ select(17) }}
- 正确
- 错误
-
C++表达式 12 % 10 % 10 的值为2。
{{ select(18) }}
- 正确
- 错误
- C++语句 cout << rand() << ' ' << rand(); 的第⼆个输出值较⼤。
{{ select(19) }}
- 正确
- 错误
-
定义C++的 int 类型的变量 ch , ⽽且值为 '1' , 则语句 cout << int(ch); 的输出为 1 。
{{ select(20) }}
-
正确
-
错误
-
下⾯C++代码执⾏后将输出10。
int i; for (i = 0; i < 10; i++) continue; if(i == 10) cout << i;
{{ select(21) }}
- 正确
- 错误
-
下⾯C++代码能求整数N和M之间所有整数之和, 包含N和M。
int N, M, Sum; cin >> N >> M; if (N > M){ int tmp = N; N = M, M = tmp; } for (int i = N; i < M+1; i++) Sum += i; cout << Sum;
{{ select(22) }}
- 正确
- 错误
-
将下⾯C++代码中的 L3 标记的代码⾏调整为 for (int i = 0; i < 5; i++) 后输出结果相同。
int loopCount = 0; for (int i = 1; i < 5; i++) // L3 for (int j = 0; j < i; j++) loopCount += 1; cout << loopCount;
{{ select(23) }}
- 正确
- 错误
-
某⼀系列数据的规律是从第3个数值开始是前两个数之和。 下⾯的代码求第N个数的值, N限定为⼤于2。
int start1; // 第1个数 int start2; // 第2个数 int N; //求N个数的值 int tmp; cin >> start1 >> start2 >> N; for (int i = 2; i < N; i++){ tmp = start1 + start2; start1 = start2; start2 = tmp; } cout << start2;
{{ select(24) }}
- 正确
- 错误
-
下⾯C++代码执⾏时如果输⼊ 2024 , 则输出是 4202 。
int N, flag=0; cin >> N; while (N){ if(!flag) cout << N % 10; N /= 10; flag = (flag + 1)%2; }
{{ select(25) }}
-
正确
-
错误