1-1共用体变量可以作结构体的成员,结构体变量也可以作共用体的成员。
对
1-2结构体变量可以作数组元素。
对
1-3指向结构体变量的指针可以作函数参数,实现传址调用。
对
1-4结构体成员的类型必须是基本数据类型。
错
1-5结构体成员必须是不同数据类型的变量。
错
1-6结构体数组中可以包含不同结构体类型的结构体变量。
错
1-7结构体类型本身不占用内存空间,结构体变量占用内存空间。
对
2-1定义如下结构体:
struct sk
{
int a;
float b;
}data, *p;
若指针p指向结构体变量data,即有p = &data; ,则对结构体成员a的正确引用是____。2
- (*p).data.a
- (*p).a
- p->data.a
- p.data.a
2-2设有以下说明语句:
struct stu
{
int a;
float b;
}stutype;
则下面的叙述不正确的是:3?
- struct是结构体类型的关键字
- struct stu是用户定义的结构体类型
- stutype是用户定义的结构体类型名
- a和b都是结构体成员名
2-3
以下代码:
struct Student{
int n;
struct Student * next;
};
struct Student a[3]={5,&a[1],7,&a[2],9, NULL};
struct Student *p;
p=a;
那么,以下表达式不能够正确地访问到第3个结构体数组元素a[2]的成员n(其值为9)的是( )3
- p[2].n
- (p+2)->n
- *(p+2).n
- p->next->next->n
2-4
设有如下说明
typedef struct ST
{
long a;
int b;
char c[2];
} NEW;
则下面叙述中正确的是____3
- 以上的说明形式非法
- ST是一个结构体类型
- NEW是一个结构体类型
- NEW是一个结构体变量
2-5以下结构类型可用来构造链表的是()。2
- struct aa{ int a;int * b;};
- struct bb{ int a;bb * b;};
- struct cc{ int * a;cc b;};
- struct dd{ int * a;aa b;};
2-6在C++中,关于下列设置缺省参数值的描述中,()是正确的。2
- 不允许设置缺省参数值;
- 在指定了缺省值的参数右边,不能出现没有指定缺省值的参数;
- 只能在函数的定义性声明中指定参数的缺省值;
- 设置缺省参数值时,必须全部都设置;
2-7对于以下结构定义,++p->str
中的++
加在____。1
struct {
int len;
char *str;
} *p;
- 指针str上
- 指针p上
- str指的内容上
- 以上均不是