第十一章习题 结构体与共用体
1. 以下C语言共用体类型数据的描述中,不正确的是( )
A) 共用体变量占的内存大小等于所需内存最大的成员所占的内存
B) 共用体类型可以出现在结构体类型定义中
C) 在定义共用体变量的同时允许对第一个成员的值进行初始化
D) 同一共用体中各成员的首地址不相同
2. 下列对结构体类型变量定义不正确的是( )
A)struct teacher B) struct
{ int num; { int num;
int age; }teach1; int age; }teach1,teach2;
C) struct D) struct teacher
{ int num; { int num;
int age; }teacher; int age; };
struct teacher teach1; struct teacher teach1;
3. 若有定义:
struct teacher
{ int num;
char name[10];
char sex;
int age;
float score;}teacher1;
则变量teacher1所占用的内存字节数是( )
A) 5 B)14 C) 19 D) 20
4. 以下程序的运行结果是( )
#include <stdio.h>
union Utype
{ int i; float y; }u[2];
void main()
{ printf("sizeof(u):%d\n",sizeof(u)); }
A)2 B) 4 C) 6 D) 8
5. 设有以下定义语句:
struct student
{ int num; char name[10]; float score; }wang,zhang;
则变量wang所占的内存字节数是( )
A) 14 B) 16 C)18 D) 20
6. 设有如下定义语句:
union u_type
{ int i; double x; float f; };
struct str_type
{ char str[100]; union u_type u[2]; };
则语句“printf("%d",sizeof(struct str_type));”的输出结果是( )
A)100 B) 116 C) 120 D) 200
7. 下面程序的输出结果为( )
#include <stdio.h>
void main ()
{ enum Weekday {sun=7, mon=1, tue, wed, thu, fri, sat};
enum Weekday day=sat;
printf (“%d\n”, day); }
A) 7 B) 6 C) 5 D) 4
8. 对枚举类型进行定义,不正确的是( )
A) enum b{1,2,3}; B)enum a{A,B,C}; C)enum c{D=3,E,F}; D) enum d{X=0,Y=5,Z=9};
9. 假定已有如下变量说明和枚举定义:
char ch;
int j, k;
enum day{sun, mon, tue, wed, thu, fri, sat};
int a[sat];
判断下列语句是否符合语法规则,结果是( )
char a; /*语句1*/
j+k=j; /*语句2*/
if(a[mon]>0) j++; /*语句3*/
A)语句2错误,其他正确 B)语句1正确,其他错误
C)语句3正确,其他错误 D) 语句1错误,其他正确
10. 若有以下说明和定义
enum c++ typedef int *INTEGER
INTEGER p,*q;
以下叙述正确的是( )
A) p是int型变量 B) p是基类型为int的指针变量
C) q是基类型为int的指针变量 D) 程序中可用INTEGER代替int类型名
11. 设有如下定义:
typedef int *INTEGER;
INTEGER p,*q;
则( )是正确的叙述
A)p是int型变量 B)q是基类型为int的指针变量
C)p是基类型为int的指针变量 D) 程序中可用INTERGER代替int类型名
12. 若有以下类型说明,叙述正确的是( )
typedef struct
{ int num;
char *name;
int score;
}STU, *PSTU;
A) STU 是变量名 B) PSTU是变量名
C) PSTU是指向结构体类型的STU的指针类型名 D) 类型说明语句有错误
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论