GESP C++ 2级 2023.12
以下不可以做为C++变量的是( )。
FiveStar
fiveStar
5Star
Star5
在C++中,与 for(int i = 10; i < 20; i +=2) cout << i; 输出结果相同的是( )。
for(int i = 10; i < 19; i +=2) cout << i;
for(int i = 11; i < 19; i +=2) cout << i;
for(int i = 10; i < 21; i +=2) cout << i;
以上均不对
以下C++代码实现从小到大的顺序输出能整除N的数(N的因子),例如N=18时输出1 2 3 6 9 18,横线处应填入( )。
cin >> N;
for(________)
if(N % i == 0)
cout << i << " ";
int i = 0; i < N; i++
int i = 1; i < N; i++
int i = 0; i < N+1; i++
int i = 1; i < N+1; i++
下面C++代码用于判断输入的整数是否为对称数,如1221、12321是对称数,但123、972不是对称数。下面对该题对应代码的说法,正确的是( )。
int N,newNum;
cin >> N;
newNum = 0;
while(N){
newNum = newNum * 10 + N% 10;
N = N / 10;
}
if(newNum == N)
cout<< N << "为对称数";
代码没有语法错误,如果N为对称数,第8行将能正确输出。
代码没有语法错误,但如果N为负数,将导致死循环。
代码存在语法错误,程序不能被执行。
代码没有语法错误,但不能达到预期目标,因为循环结束N总为0。
下面C++代码用于判断N(大于等于2的正整数)是否为质数(素数)。下面对如下代码的说法,正确的是( )。
cin >> N;
for(i = 2; i = N / 2)
cout << N << "是质数";
代码能正确判断N是否为质数。
代码总是不能判断N是否质数。
删除第5行 break ,将能正确判断N是否质数。
代码存在漏洞,边界存在问题,应将第2行和第7行的 N / 2 改为 N / 2 + 1 。
下面C++代码执行后的输出是( )。
N = 4;
for (int i = 0; i < N; i++) {
for (int j = 1; j < i; j++)
if (i * j % 2 == 0)
cout << i << "#";
continue;
}
cout << "0";
2#3#0
1#2#0
1#0#
2#3#
下面C++代码执行后的输出是( )。
cnt = 0;
int i;
for ( i = 1; i = 10) cout << cnt << "#";
cout << cnt;
0
8#8
4
4#4
下面C++代码执行后的输出是( )。
N = 100;
while(N > 0)
if(N % 2)
break;
e1se if (N % 3 == 0)
N -= 5;
else
N -= 20;
cout << N;
100
95
55
0
下面C++代码执行后的输出是( )。
x = 1;
while (x < 100) {
if (x % 3 != 0)
cout << x << ",";
else if (x / 10)
break;
else
x += 5;
x += 2;
}
cout << x;
1
1,3
15,17
1,10,12
下面C++代码执行后的输出是( )。
cnt = 0;
for (i = 0; i < 5; i++)
for (j = 0; j < i; j++)
cnt += 1;
cout << cnt;
5
10
20
30
