#G1080. [GESP202406] 一级理论

[GESP202406] 一级理论

一、单选题(每题 2 分,共 30 分)

第 1 题 在C++中,下列不可做变量的是( )。

{{ select(1) }}

  • five-Star
  • five_star
  • fiveStar
  • _fiveStar

第 2 题 C++表达式 3 - 3 * 3 / 5 的值是( )。

{{ select(2) }}

  • -1.2
  • 1
  • 0
  • 2

第 3 题 在C++中,假设N为正整数,则表达式 cout << (N % 3 + N % 7) 可能输出的最⼤值是( )。

{{ select(3) }}

  • 6
  • 8
  • 9
  • 10

第 4 题 C++语句 printf("5%%2={%d}\n",5 % 2) 执⾏后的输出是( )。

{{ select(4) }}

  • 1={1}
  • 5%2={5%2}
  • 5%2={1}
  • 5 ={1}

第 5 题 对整型变量i,执⾏C++语句 cin >> i, cout << i 时如果输⼊ 5+2 ,下述说法正确的是( )。

{{ select(5) }}

  • 将输出整数7
  • 将输出 5
  • 语句执⾏将报错,输⼊表达式不能作为输出的参数
  • 语句能执⾏,但输出内容不确定

第 6 题 下⾯C++代码执⾏后的输出是( )。

float a;
a = 101.101;
a = 101;
printf("a+1={%.0f}",a+1);

{{ select(6) }}

  • 102={102}
  • a+1={a+1}
  • a+1={102}
  • a先被赋值为浮点数,后被赋值为整数,执⾏将报错

第 7 题 表达式 9/4 - 6 % (6 - 2) * 10 的值是( )。

{{ select(7) }}

  • -17.75
  • -18
  • -14
  • -12.75

第 8 题 下⾯C++代码执⾏时输⼊10后,正确的输出是( )。

int N;
cout << "请输入正整数:";
cin >> N;
if (N % 3)
    printf("第5行代码%2d", N % 3);
else
    printf("第6行代码%2d", N % 3);

{{ select(8) }}

  • 第5行代码1
  • 第6行代码1
  • 第5行代码 1
  • 第6行代码 1

第 9 题 下⾯C++代码执⾏后输出是( )。

int Sum = 0, i = 0; 
for ( ; i < 10; ) 
    Sum += i++; 
cout << i << " " << Sum;

{{ select(9) }}

  • 9 45
  • 10 55
  • 10 45
  • 11 55

第 10 题 下⾯C++代码⽤于判断N是否为质数(只能被1和它本⾝整除的正整数)。 程序执⾏后,下⾯有关描述正确的是( )。

int N; 
cout << "请输入整数:"; 
cin >> N; 

bool Flag = false; 

if (N >= 2){ 
    Flag = true; 
    for (int i=2; i < N; i++) 
        if (N % i == 0){ 
            Flag = false; 
            break; 
        } 
} 

if(Flag) 
    cout << "是质数"; 
else 
    cout << "不是质数";

{{ select(10) }}

  • 如果输⼊负整数,可能输出“是质数”
  • 如果输⼊2,将输出“不是质数”,因为此时循环不起作⽤
  • 如果输⼊2,将输出“是质数”,即便此时循环体没有被执⾏
  • 如果将 if (N >= 2) 改为 if (N > 2) 将能正确判断N是否质数

第 11 题 下⾯的C++代码⽤于求1~NN之间所有奇数之和,其中NN为正整数,如果NN为奇数,则求和时包括NN。有关描述错误的是( )。

int N; 
cout << "请输入正整数:"; 
cin >> N; 

int i = 1, Sum = 0; 

while (i <= N){ 
    if (i % 2 == 1) 
        Sum += i; 
    i += 1; 
} 

cout << i << " " << Sum;

{{ select(11) }}

  • 执⾏代码时如果输⼊10,则最后⼀⾏输出将是 11 25
  • 执⾏代码时如果输⼊5,则最后⼀⾏输出将是 6 9
  • i += 1 移到 if (i % 2 == 1) 前⼀⾏,同样能实现题⽬要求
  • 删除 if (i % 2 == 1) ,并将 i += 1 改为 i += 2 ,同样可以实现题⽬要求

第 12 题 如果⼀个整数N能够表⽰为 X*X 的形式,那么它就是⼀个完全平⽅数,下⾯C++代码⽤于完成判断N是否为⼀个完全平⽅数,在横线处应填⼊的代码是( )。

int N; 

cin >> N; 
for(int i = 0; i <= N; i++) 
    if(___________________) 
        cout << N << "是一个完全平方数\n";

{{ select(12) }}

  • i == N*N
  • i*10 == N
  • i+i == N
  • i*i == N

第 13 题 执⾏下⾯C++代码后输出的cnt的值是( )。

int cnt=0; 

for(int i = 0; i*i < 64; i+=2) 
    cnt++; 
cout << cnt;

{{ select(13) }}

  • 8
  • 7
  • 4
  • 1

第 14 题 ⼩杨⽗母带他到某培训机构给他报名参加CCF组织的GESP认证考试的第1级,那他可以选择的认证语⾔有⼏种?( )

{{ select(14) }}

  • 1
  • 2
  • 3
  • 4

第 15 题 ENIAC于1946年投⼊运⾏,是世界上第⼀台真正意义上的计算机,它的主要部件都是( )组成的。

{{ select(15) }}

  • 感应线圈
  • 电⼦管
  • 晶体管
  • 集成电路

二、判断题(每题 2 分,共 20 分)

第 16 题 在C++代码中变量 X 被赋值为16.44,则 cout << X / 10 执⾏后输出的⼀定是 1 。( )

{{ select(16) }}

第 17 题 C++的整型变量 N 被赋值为10,则语句 cout << N / 4 << "->" << N % 4 << "->" << N / 4.0 执⾏后输出是 2->2->2.0 。 ( )

{{ select(17) }}

第 18 题 定义C++的 float 型变量 N ,则语句 cin >> N; cout << int(float(N)) 可以输⼊正负整数和浮点数,并将其转换为整数后输出。( )

{{ select(18) }}

第 19 题 C++的整型 N 被赋值为5,语句 printf("%d*2",N) 执⾏后将输出 10 。( )

{{ select(19) }}

第 20 题 在C++中, break 语句⽤于终⽌当前层次的循环,循环可以是 for 循环,也可以是 while 循环。( )

{{ select(20) }}

第 21 题 在C++, continue 语句通常与 if 语句配合使⽤。( )

{{ select(21) }}

第 22 题 在C++代码中,不可以将变量命名为 printf ,因为 printf 是C++语⾔的关键字。( )

{{ select(22) }}

第 23 题 在C++中有整型变量N,则表达式 N += 8/4//2 相当于 N += 8/(4/2) 。( )

{{ select(23) }}

第 24 题 C++中定义变量 int N ,则表达式 (!!N) 的值也是 N 的值。 ( )

{{ select(24) }}

第 25 题 GESP测试是对认证者的编程能⼒进⾏等级认证,同⼀级别的能⼒基本上与编程语⾔⽆关。( )

{{ select(25) }}