第十一章习题    结构体与共用体
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) pint型变量                    B) p是基类型为int的指针变量
C) q是基类型为int的指针变量        D) 程序中可用INTEGER代替int类型名
11. 设有如下定义:
typedef int *INTEGER;
INTEGER p,*q;
(          )是正确的叙述
A)pint型变量                        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小时内删除。