#1546. 结构体基础

结构体基础

1、关于结构体,以下说法正确的是( )。 {{ select(1) }}

  • 结构体只能包含基本数据类型的成员变量,不能包含数组成员。
  • 结构体类型可以声明变量,但是不能声明结构体数组。
  • 可以使用赋值运算符将一个结构体变量赋值给另一个结构体变量。
  • 定义结构体类型时,系统实际上就已经分配了内存。

2、运行下面程序,输出结果为({{ input(2) }} )。

struct AA {
    int num;
    char name[10];
} a[5] = {1, "ZhangSan", 2, "LiSi", 3, "WangWu", 4, "ZhaoLiu"};

int main()
{
    cout << a[1].num << " " << a[2].name;
    return 0;
}

3、已知结构体定义: struct AA{int x, y;}; 如果将下面的比较函数用于 sort 的第三个参数,来给一个元素类型为 AA 的一维数组排序,实现的功能是( )。

bool cmp(AA a, AA b)
{
    return a.x == b.x ? a.y < b.y : a.x > b.x;
}

{{ select(3) }}

  • 按 x 由大到小排,x 相同时,按 y 由小到大排
  • 按 x 由小到大排,x 相同时,按 y 由小到大排
  • 按 x 由大到小排,x 相同时,按 y 由大到小排
  • 按 x 由小到大排,x 相同时,按 y 由大到小排