#GESP1067. [GESP202409三级] 客观题

[GESP202409三级] 客观题

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

  1. 下列代码中, 输出结果是( )。

    include<iostream>
    using namespace std;
    int main()
    {
    	double a=0.9;
    	double b=1.0;
    	if(((b-a)==0.1))
    	{
    		cout<<"Equal"<<endl;
    	}
        else
    	{
    		cout<<"Not equal"<<endl;
    	}
    }
    

{{ select(1) }}

  • Equal
  • Not equal
  • 程序不能正确执行
  • 没有输出
  1. 关于计算机中的编码, 下列说法中正确的是( )。

{{ select(2) }}

  • 机器数的形式值和真值是一致的
  • 原码就是符号位加上真值
  • 机器数是带符号的
  • [-1]=[1000 0001]原=[1111 1111]反
  1. 8进制数3703转换成16进制数是 ( )。

{{ select(3) }}

  • 7C37C3
  • 7A37A3
  • 7B37B3
  • 7D37D3
  1. 0.8125变成⼆进制是 ( )。

{{ select(4) }}

  • 0.11100.1110
  • 0.11111101111010.1 1111 1011 1101
  • 0.11111101111000.1 1111 1011 1100
  • 0.11010.1101
  1. 下⾯说法正确的是 ( )。

{{ select(5) }}

  • (22&01) ==(22&&01) 成立
  • (23|11)==30
  • (23|10)==31
  • (23|01)==31
  1. 下列说法正确的是 ( )。

    {{ select(6) }}

  • 2>>1和1>>1的值是一样的
  • (2>>2)和(1>>1)的值是一样的
  • (11 ^ 00)和(1 ^ 0)的值是一样的
  • (~0的输出值是1)
  1. 下列代码实现的是 ( )。

    void Swap(int &a, int &b) {
    	if (a != b) {
    		a ^= b;
    		b ^= a;
    		a ^= b;
    	}
    }
    

{{ select(7) }}

  • a和b的异或

  • a和b的同或

  • a和b的值交换

  • a和b的高低位互换

  1. a&~1运算实现的是 ( )。

{{ select(8) }}

  • 使a的最低位为1
  • 使a的最高位为1
  • 使a的最低位为0
  • 使a的最高位为0
  1. a=1010 1110,a<<2,下面关于这个说法正确的是 ( )。

{{ select(9) }}

  • a的值变为1011 1000
  • a的值变为1011 1010
  • a的值变为0101 1101
  • a的值变为0101 1100
  1. 下列程序中, result和result2输出分别是 ( )。

    long a = 123;
    int b = 1;
    long result = a & b;
    cout<<result<<endl;
    
    long a2 = -123;
    unsigned int b2 = -1;
    long result2 = a2 & b2;
    cout<<result2<<endl;
    

{{ select(10) }}

  • 123 -1
  • 123 -123
  • 1 -1
  • 1 -123
  1. 陈A歹种植一批农作物, 第一天需要浇水一次, 随后的两天(第2、 第3天) , 每天需要浇水2次, 再随后的 3天(第4、 第5、 第6天) , 需要每天浇水3次, 这样持续下去, 随后的n天, 每天需要浇水n次。 请问在100天里, 总共浇了多少次水 ( )。

{{ select(11) }}

  • 994
  • 996
  • 995
  • 945
  1. 关于一维数组, 下列程序能够正确执行的是 ( )。

{{ select(12) }}

  • int a[10];
    int sum=0;
    for(int i=0;i<=10;i++) {
    	sum=sum+a[i];
    }
    
  • int a[10]={1,2,3,4,5,6,7,8,9,10};
    int sum=0;
    for(int i=0;i<=10;i++) {
    	sum=sum+a[i];
    }
    
  • int a[10]={1,2,3,4,5,6,7,8,9,10};
    int sum=0;
    for(int i=0;i<10;i++) {
    	sum=sum+a[i];
    }
    
  • int a[10]={0};
    int sum=0;
    for(int i=0;i<=10;i++) {
    	sum=sum+a[i];
    }
    
  1. 下⾯的程序中, 会输出()

    int a[10]={1,2,3,4,5,6,7,8,9,10};
    cout << a[10] << endl;
    

{{ select(13) }}

  • 11
  • 00
  • 1010
  • 不确定的值
  1. 有ABCD4个⼈, 其中⼀个是⼩偷, 每个⼈说⼀句话, 只有⼩偷说的是假话, 其中A说: 不是我。 B说: 是 C。 C说: 是D。 D说: C瞎说, 请问谁是小偷 ()

{{ select(14) }}

  • A
  • B
  • C
  • D
  1. 下列程序输出的是 ?

    string str = "Hello,陈A歹";
    cout << str.find("A") << '\n';
    

{{ select(15) }}

  • 99
  • 88
  • 77
  • 66

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

  1. +1和-1的原码进行1+(-1) 计算的结果是-2 。
    {{ select(16) }}
  • 正确
  • 错误
  1. ~1 的输出值是 -2 。
    {{ select(17) }}
  • 正确
  • 错误
  1. ~1 = 1111 1110 。

    {{ select(18) }}

  • 正确
  • 错误
  1. 取 X 的低四位, 可以⽤ Y = 0000 1111 , ⽤ X&Y 获取 X 的低四位。

{{ select(19) }}

  • 正确
  • 错误
  1. 下列程序输出的是 A 。

    char x=65;
    x++;
    cout<<x++<<endl;
    

    {{ select(20) }}

  • 正确

  • 错误

  1. 下列程序输出的是 3 。

    string str="陈ADai";
    size_t pos = str.find('D');
    cout<<pos<<endl;
    

    {{ select(21) }}

  • 正确
  • 错误
  1. 下列程序将输出 1 。
```cpp
int a[10]={1};
cout<<a[1]<<endl;
```

{{ select(22) }}

  • 正确
  • 错误
  1. 下列程序将输出 A 。

    int a=65;
    cout<<(char)a<<endl;
    

    {{ select(23) }}

  • 正确
  • 错误
  1. 16进制数 AB , 表⽰成2进制数是 10101011 。 {{ select(24) }}
  • 正确
  • 错误
  1. def (⼗六进制) = 103231 (五进制)。

    {{ select(25) }}

  • 正确

  • 错误