第六章单元测试
在16位系统中,定义以下结构体类型
struct s
{
int a;
char b;
float f;
};
则语句printf("%d",sizeof(struct s))的输出结果为()。
以下选项中不能正确把cl定义成结构体变量的是()。
当定义一个结构体变量时,系统为它分配的内存空间是()
根据下面的定义,能打印出字母M的语句是_____。
struct person { char name[9]; int age;};
struct person classes[10]={"John",17, "Paul",19,"Mary",18, "Adam",16};
不可以作为函数参数的有()。
结构体变量整体作函数参数时,以下说法正确的是()。
已知字符'0'的ASCII码为十六进制的30H,下面程序的输出是()。
void main()
{ union { unsigned char c;
unsigned int i[4];
} z;
z.i[0]=0x39;
z.i[1]=0x36;
printf("%c",z.c);}
在下面的叙述中,不正确的是()。
设有以下语句
typedef struct S
{ int g; char h;} T;
则下面叙述中正确的是( )。
以下叙述中错误的是()。
A:4 B:7 C:6 D:3
答案:7
A:typedef struct
{int red;
int green;
int blue;
} COLOR;
COLOR cl;
{ int red;
int green;
int blue;
};
{ int red;
int green;
int blue;
}cl;
{int red;
int green;
int blue;
}c1;
A:结构中一个成员所需的内存容量 B:结构中各成员所需内存容量之和 C:结构中第一个成员所需的内存容量 D:结构体中占内存容量最大者所需的容量
A:printf("%c",classes[3].name); B:printf("%c",classes[2].name[1]); C:printf("%c",classes[3].name[1]); D:printf("%c",classes[2].name[0]);
A:结构体数组元素 B:结构体数组整体 C:结构体变量整体 D:结构体数组名
A:其余说法都不对,不能整体作为函数参数 B:结构体变量整体不能做形参 C:结构体变量整体不能做实参 D:实参结构体变量和形参结构体变量的类型应当一致。
A:6
B:3 C:9 D:0
A:枚举常量表中的元素有先后次序,可以进行比较。 B:可以在定义枚举类型时对枚举常量进行指定表示的值。 C:枚举变量只能取对应枚举类型的枚举常量表中的元素。 D:枚举常量的值可以是整数或字符串。
A:T是struct S类型的变量 B:可用S定义结构体变量 C:S是struct类型的变量 D:可以用T定义结构体变量
A:可以通过typedef增加新的类型 B:用typedef可以为各种类型起别名,但不能为变量起别名 C:可以用typedef将已存在的类型用一个新的名字来代表 D:用typedef定义新的类型名后,原有类型名仍有效