以下关于结构体和数组的说法中,正确的是( )
- AA. 数组元素类型必须相同
- BB. 结构体成员类型必须相同
- CC. 两者完全相同
- DD. 数组不能嵌套
若有定义:struct{int a;int b;}x={1},y={2};,则x==y是( )
- AA. true
- BB. 错误,不能直接比较
- CC. false
- DD. 取决于编译器
若有定义:struct stu{int num;}s={100},*p=&s;,则p->num的值为( )
- AA. 100
- BB. &s.num
- CC. 100的地址
- DD. 错误
若有定义:struct stu{int num;struct stu *next;};,则next是( )
- AA. 指向struct stu的指针
- BB. 结构体变量
- CC. 整型指针
- DD. 结构体数组
若有定义:struct stu{int num;}s[5];,则s[2].num的"num"是( )
- AA. 成员名
- BB. 变量名
- CC. 结构体名
- DD. 数组名
若有定义:struct stu{int num;int age;}*p;,若p->age=20;,则表示( )
- AA. 设置age成员为20
- BB. age变量等于20
- CC. p的age地址
- DD. 错误
若有定义:union data{int a;float b;char c;};,则sizeof(union data)的值是( )
- AA. 4
- BB. 4(最大成员大小)
- CC. 6
- DD. 1
若有定义:enum color{RED,GREEN,BLUE};,则RED的值是( )
- AA. 0
- BB. 1
- CC. RED
- DD. 不确定
若有定义:enum week{MON=1,TUE,WED=4,THU,FRI,SAT,SUN};,则WED的值是( )
- AA. 4
- BB. 2
- CC. 3
- DD. 5
以下关于结构体初始化的说法中,正确的是( )
- AA. 结构体不能初始化
- BB. 结构体可以在定义时初始化
- CC. 结构体只能用成员名初始化
- DD. 结构体初始化必须所有成员都赋值
若有定义:struct stu{int num;int age;}s={.age=20,.num=100};,则s.num和s.age分别是( )
- AA. 20,100
- BB. 100,20
- CC. 100,20
- DD. 都不对
若有定义:struct stu{int num;}s[3]={{1},{2},{3}};,则s[1].num的值是( )
- AA. 1
- BB. 2
- CC. 3
- DD. 0
以下关于结构体的说法正确的有( )
- AA. 结构体是自定义数据类型
- BB. 结构体成员类型可以不同
- CC. 结构体变量占用连续内存
- DD. 结构体变量可以直接相加
- EE. 结构体变量可以直接比较
- FF. 结构体不能嵌套定义
- GG. 结构体成员只能是变量
- HH. 结构体只能有一个成员
以下关于结构体变量的说法正确的有( )
- AA. 结构体变量可以赋值
- BB. 结构体变量可以初始化
- CC. 结构体变量可以作为函数参数
- DD. 结构体变量可以定义指针
- EE. 结构体变量可以直接相加
- FF. 结构体变量可以直接比较
- GG. 结构体变量不能作为函数返回值
- HH. 结构体变量不能赋值
以下关于结构体指针的说法正确的有( )
- AA. 指向结构体变量的指针
- BB. 用->访问成员
- CC. (*p).member等价于p->member
- DD. 结构体指针有类型
- EE. 结构体指针比其他指针大
- FF. 结构体指针不能为NULL
- GG. 结构体指针不能自增
- HH. 结构体指针不能作为参数
以下关于结构体和函数的说法正确的有( )
- AA. 结构体可以作为函数参数
- BB. 结构体作为参数时复制整个结构体
- CC. 结构体可以作为函数返回值
- DD. 传递结构体指针更高效
- EE. 结构体不能作为函数参数
- FF. 结构体不能作为函数返回值
- GG. 结构体作为参数时不能改变
- HH. 函数只能返回结构体指针
以下关于typedef的说法正确的有( )
- AA. typedef为类型定义别名
- BB. typedef不创造新类型
- CC. typedef可以定义变量
- DD. typedef可以简化复杂类型
- EE. typedef是预处理指令
- FF. typedef可以改变类型属性
- GG. typedef定义的类型没有作用域
- HH. typedef可以定义函数
以下关于枚举类型的说法正确的有( )
- AA. 枚举类型是整型常量集合
- BB. 枚举常量默认从0开始
- CC. 枚举常量可以显式赋值
- DD. 枚举类型占用内存很大
- EE. 枚举变量只能取枚举值
- FF. 枚举常量是字符串
- GG. 枚举类型不能赋值
- HH. 枚举常量不能比较
以下关于联合体的说法正确的有( )
- AA. 联合体成员共享内存
- BB. 联合体大小是最大成员大小
- CC. 对一个成员赋值会影响其他成员
- DD. 联合体可以同时使用所有成员
- EE. 联合体大小是所有成员之和
- FF. 联合体成员类型必须相同
- GG. 联合体不能嵌套
- HH. 联合体成员同时有效
以下关于结构体内存对齐的说法正确的有( )
- AA. 结构体有内存对齐
- BB. 对齐与编译器有关
- CC. 结构体大小总是成员之和
- DD. 使用#pragma pack可以改变对齐
- EE. 内存对齐不影响效率
- FF. 所有编译器对齐规则相同
- GG. 结构体成员顺序不影响大小
- HH. 对齐总是按最大成员
本页仅提供题目与选项供学习参考,不含答案。如需系统练习、自动判分与错题本,欢迎前往主站《NCRE计算机等级考试二级(C语言程序设计)》在线练习。