第十三章单元测试
  1. 以下程序运行后的输出结果是____。


    #include<stdio.h>

    struct s

    {

      int x;

      int y;

    } data[2] = {10, 100, 20, 200};

    int main()

    {

      struct s *p = data + 1;

      printf("%d", p->x);

      return 0;

    }



  2. A:10 B:21 C:20 D:11
    答案:20
  3. 有如下定义:


    struct Student{

        char name[10];

        int age;

        char gender;

    }std[3], *p=std;

    则以下各输入语句中错误的是:



  4. A:scanf("%s",&std.name); B:scanf("%c",&std[0].gender); C:scanf("%c",&(p->gender)); D:scanf("%d",&(*p).age);
  5. 有如下定义:struct  date { int year; int month;  int day; };struct  { char name[20]; char sex; struct date birthday; }person;下面正确的赋值语句是()。


  6. A:

    person.year=1980;

    B:

    person.birthday.year=1980;

    C:

    birthday.year=1980 ;

    D:

    year=1980 ;

  7. 共用体变量在程序执行期间()。


  8. A:

    部分成员一直驻留在内存中

    B:

    所有成员一直驻留在内存中

    C:

    没有成员一直驻留在内存中

    D:

    只有一个成员一直驻留在内存中

  9. 设有以下定义:struct sk{int a;float b;}data;int *p;若要使p指向data中的a域,正确的赋值语句是()。


  10. A:

    p=&a;

    B:

    p=&data.a;

    C:

    *p=data.a;

    D:

    p=data.a;

  11. 对于结构体变量的引用,下列叙述正确的是()。


  12. A:

    如果成员本身就是一个结构体,只能对最低级的成员进行赋值等引用和运算。

    B:

    对结构体成员可以进行各种运算,其中“.”优先级最低。

    C:

    两个同一类型的结构体变量之间不能整体赋值。

    D:

    只能引用结构体变量成员的地址,不能引用结构体变量的地址。

  13. 以下叙述错误的是()。


  14. A:

    可以通过typedef增加新的类型

    B:

    可以用typedef将已存在的类型用一个新的名字代表

    C:

    用typedef定义新类型后,原有类型名仍有效

    D:

    用typedef可以为各种类型起别名,但不能为变量起别名

  15. 在一个单链表head中,若要在指针p所指结点后插入一个q指针所指结点,则执行()。


  16. A:

    q->next=p->next; p=q;

    B:

    p->next=q->next; q->next=p;

    C:

    q->next=p->next; p->next=q;

    D:

    p->next=q->next; p->next=q;

  17. 链表不具有的特点是()。


  18. A:

    可随机访问任一元素

    B:

    所需空间与线性长度成正比

    C:

    不必事先估计存储空间

    D:

    插入、删除不需要移动元素

  19. “结构体名”和“结构体成员名”都是用户定义的标识符。


  20. A:错 B:对
  21. 每个“结构体成员列表”项中都可以含有多个同类型的成员名,它们之间以分号分隔。


  22. A:对 B:错
  23. 共用体变量所占内存长度是各成员所占内存长度之和。


  24. A:错 B:对
  25. 若有以下说明和语句:struct  student { int no;   char *name;  }stu, *p=&stu; 则以下引用方式正确的是()。


  26. A:

    (*p).no

    B:

    stu->no

    C:

    p->no

    D:

    stu.no

  27. 设有说明语句:struct s { int a; float b; }type;则下面正确的叙述是()。


  28. A:

    struct是结构体类型的关键字

    B:

    a和b都是结构体成员名

    C:

    type是用户定义的结构体类型名

    D:

    struct s是用户定义的结构体类型

温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!
点赞(1) dxwkbang
返回
顶部