#X1057. [GESP202512一级] 客观题
[GESP202512一级] 客观题
一、单选题(每题 2 分,共 30 分)
第 1 题 近日,空中客车公司表示,约6000架空客A320系列飞机需要紧急更换一种易受太阳辐射影响的飞行控制软件。空客表示,在对一起飞行事故分析后的结果显示,强烈的太阳辐射可能会损坏飞行控制系统所需的关键数据,导致判断失误,进而引发飞行异常。那这里的飞行控制系统执行判断的部件最可能是下面的( ) {{ select(1) }}
- 辐射传感器
- 处理器
- 内存单元
- 输出设备
第 2 题 下面的C++代码在某集成开发环境中编译运行时,提示有“Invalid Character”(“无效字符”)错误。可能的原因是( )
int a, b; a=3,b = 4; // L1
cout << a; // L2
cout << b; // L3
{{ select(2) }}
- L1 行代码中的逗号很可能是中文逗号,应该改为英文逗号
- L1 行应该分为两行,分别是 a=3 和 b=4
- 代码运行前没有保存到文件
- L2 和 L3 不能分为两行,应合并为一行
第 3 题 下面有关 C++ 变量的说法,正确的是 ( )
{{ select (3) }}
- 不可以用 for 作为变量名,因为 for 是 C++ 的关键字(保留字)
- _tnt 不可以是变量名,因为变量名的第一个字符必须是英文字母
- tnt 不可以是变量名,因为最后一个字符容易与减号混淆
- 可以用 printf 作为变量名,因为 printf 是关键字,但这不是好习惯,因为 printf 有约定的功能与含义
第 4 题 X 是 C++ 的整型变量,则 cout << (X=3, X++, ++X); 执行后的输出是 ( )
{{ select (4) }}
- 3
- 4
- 5
- 不确定
第 5 题 C++ 表达式 2 + 3 * 4 % 5 的值为 ( )
{{ select (5) }}
- 0
- 4
- 14
- 50
第 6 题 下面的 C++ 代码执行后,其输出是 ( )
a = 3; b = a = 4; printf("%d %d", a, b);
{{ select(6) }}
- 4 4
- 3 3
- 3 4
- 4 3
第 7 题 下面的 C++ 代码执行时如果先输入 10 回车后输入 20 并回车,其输出是 ( )
int N,M;
printf("第一个数:");
scanf("%d", &N);
printf("第二个数:");
scanf("%d", &M);
printf("%%(N+M)=%d", N+M);
{{ select(7) }}
- 30=30
- 10+20=30
- %(N+M)=30
- 错误提示
第 8 题 某个整数很长很长,形如:1232123212321……,其规律是从 1 开始逐一升高到 3 然后逐一降低到 1,然后又逐一升高到 3,一直到很长很长。假设最高位编号为 1,要求判断从左边最高位开始的第 N 位数是几?在横线处应该填入的代码是 ( )
int N, M;
cout << "请输入编号:";
cin >> N;
M = _____________;
if (M != 0)
cout << M;
else
cout << 2;
{{ select(8) }}
- N % 4
- N / 4
- N % 3
- N / 3
第 9 题 下面 C++ 代码执行后的输出是 ( )
int i, tnt = 0;
for (i = 0; i < 100; i++)
tnt += 1;
cout << tnt << ' ' << i;
{{ select(9) }}
- 99 99
- 100 99
- 99 100
- 100 100
第 10 题 有关下面 C++ 代码的说法,错误的是 ( )
int tnt = 0;
for (int i = 1; i < 10; i += 2) // L1
tnt += i; // L2
cout << tnt;
{{ select(10) }}
- L1 的 i < 10 改为 i < 11 结果相同
- L1 的 i = 1 改为 i = 0 结果相同
- tnt += i 与 tnt = tnt + i 效果相同
- tnt += i 与 tnt = i + tnt 效果相同
第 11 题 下面 C++ 代码执行后输出是 ( )
int i;
for (i = 10; i < 100; i += 10){
if (i % 10 == 0)
continue;
printf("%d#",i);
}
if(i >= 100) printf("%d END",i);
{{ select(11) }}
- 10#20#30#40#50#60#70#80#90#100 END
- 100#100 END
- 100 END
- 没有输出
第 12 题 两个正整数,只要不相等,就一直进行如下操作:最大数减去最小数得到一个值,该值和两个数的最小数构成新的两个正整数,重复操作,直到两个数相等,此时输出该数。下面的 C++ 代码用于实现该操作,横线处应该填写的代码是 ( )
int N,M;
cin >> N >> M;
while (N!=M){
if(N>M)
_____________;
else
_____________;
}
cout << N;
{{ select(12) }}
- N=N-M; M=M-N;
- M=M-N; N=N-M;
- M=N-M; N=M-N;
- N,M=M,N; M,N=N,M;
第 13 题 如果一个正整数能被 3 整除,或者某一位能被 3 整除,则称之为 "漂亮数"。下面的 C++ 代码用于判断正整数 N 是否为漂亮数,L1 行的横线处应该填入的代码是 ( )
int N, Flag;
cin >> N;
Flag=0; // "非漂亮数"
if(N%3==0)
Flag=1; // "漂亮数"
else
while (N!=0){
if(______________) { // L1
Flag=1;
break;
}
N/=10;
}
cout << (Flag?"漂亮数":"非漂亮数");
{{ select(13) }}
- N%10==0
- N%3%10==0
- N%10%3
- N%10%3==0
第 14 题 如果正整数 N 的所有奇因数(即能将 N 整除的正奇数)的和是 27 的倍数,则称 N 是 27 的神秘数。下面的 C++ 代码用于判断输入的 N 是否为 27 的神秘数,横线处应该填入的代码是 ( )
int i,N,cnt=0;
cin >> N;
for(i=1;i <=N;i++){
if(______________)
cnt+=i;
}
if(cnt%27==0)
cout << 'Y';
else
cout << 'N';
{{ select(14) }}
- (N%i) && (i%2)
- (N%i0) && (i%20)
- (N%i==0) && (i%2)
- (N%i) && (i%2==0)
第 15 题 执行下面 C++ 代码可以找出千位与个位的和恰好等于中间两位的四位数,横线处应该填入 ( )
int count=0;
int a, bc, d, tmp;
for (int i=1000;i<=9999;i++) {
a=(tmp=i)/1000;
______________;
bc=tmp/10;
d=tmp-bc*10;
if(a+d==bc) {
count++;
}
}
cout << count;
{{ select(15) }}
- tmp=i/10;
- tmp=i%100;
- tmp-=a*1000;
- tmp=i-i%1000;
二、判断题(每题 2 分,共 20 分)
第 1 题 鸿蒙是华为公司开发的一款操作系统,那么它能够将正确的源程序翻译成目标程序,并运行。
{{select (16) }}
- 正确
- 错误
第 2 题 C++ 表达式 10*4%6 和 10*2%3 的结果相同。
{{select (17) }}
- 正确
- 错误
第 3 题 下面 C++ 代码执行后将输出 0。
int i;
for(i=0;i<10;i++){
if(i%3==0)
continue;
else
break;
}
cout << i;
{{ select(18) }}
- 正确
- 错误
第 4 题 下面 C++ 代码中的 i > -10; i-- 改为 i < 10; i++ 执行结果相同。
int tnt = 0;
for (int i = 0; i > -10; i--){
if (i < 0)
i = -i;
tnt += i;
}
cout << tnt;
{{ select(19) }}
- 正确
- 错误
第 5 题 下面 C++ 代码执行后将输出 99,因为 i < 100 不包括 100,而是到 99。
int cnt = 0;
for (int i = 0; i < 100; i++)
cout << cnt;
cnt += 1;
{{ select(20) }}
- 正确
- 错误
第 6 题 下面的 C++ 代码能用于判断输入的正整数是否为对称数。所谓对称数是指从左到右和从右到左读该数,其值相同,121 或 414 等是对称数,而 123 不是对称数。
int n, new_number;
cout << "请输入正整数:";
cin >> n;
new_number = 0;
while (n != 0){
new_number = new_number * 10 + n % 10;
n /= 10;
}
if (n == new_number)
cout << "对称数";
else
cout << "非对称数";
{{ select(21) }}
- 正确
- 错误
第 7 题 下面的 C++ 代码执行后将输出 0。
int tnt = 0;
for (int i = -100; i < 100; i++)
tnt += i;
cout << tnt;
{{ select(22) }}
- 正确
- 错误
第 8 题 某同学执行 C++ 代码时 printf("%g\n", (3 + 3.1415926535)); 输出 6.14159 而不是 6.1415926535 表明该同学的计算机存在故障需要重新安装 C++ 软件。
{{select (23) }}
- 正确
- 错误
第 9 题 如果 x 是 C++ 代码中的 double 型变量,则对 cout << (x ? 1227 : 12.27); 编译时将报错,因为 1227 和 12.12 分别是 int 和 double 类型,导致识别混乱。
{{select (24) }}
- 正确
- 错误
第 10 题 在 C++ 代码中,不可以将变量命名为 keyword,因为它是 C++ 语言的关键字。
{{select (25) }}
- 正确
- 错误
粤公网安备44195502000169号