第七章单元测试
  1. 定义以下结构体类型

    struct  s

    {

        char  b;

        float  f;

    };

    则语句printf("%d",sizeof(struct  s))的输出结果为( )。



  2. A:6 B:5 C:3 D:4
    答案:5
  3. 当定义一个结构体变量时,系统为它分配的内存空间是(  )。


  4. A:结构体中占内存容量最大者所需的容量 B:结构中第一个成员所需的内存容量 C:结构中各成员所需内存容量之和 D:结构中一个成员所需的内存容量
  5. 定义以下结构体数组

      struct c

         { int x;

           int y;

          }s[2]={1,3,2,7};

    语句printf("%d",s[0].x*s[1].x)的输出结果为 (  )。



  6. A:2 B:6 C:14  D:21
  7. 下面程序的运行结果是( )。

    struct  KeyWord

    {

        char Key[20];

        int ID;

    }kw[]={"void",1,"char",2,"int",3,"float",4,"double",5};

    main()

    {

        printf("%c,%d\n",kw[3].Key[0], kw[3].ID);

    }


  8. A:l,4 B:i,3 C:f,4 D:n,3
  9. 如果有下面的定义和赋值,则使用( )不可以输出n中data的值。

    struct  SNode

    {

        unsigned id;

        int data;

    }n,*p;

    p=&n;



  10. A:(*p).data B:p->data C:p.data  D:n.data
  11. 根据下面的定义,能输出Mary的语句是( )。

        struct person

        {

           char name[9];

           int age;

        };

    struct person class[5]={"John",17,"Paul",19,"Mary",18,"Adam",16};



  12. A:printf("%s\n",class[0].name); B:printf("%s\n",class[3].name); C:printf("%s\n",class[1].name); D:printf("%s\n",class[2].name);
  13. 定义以下结构体数组

     struct date

     { int year;

      int month;

      int day; };

     struct s

     { struct date birthday;

       char name[20];

     } x[4]={{2008, 10, 1, "guangzhou"}, {2009, 12, 25, "Tianjin"}};

    语句

    printf("%s,%d,%d,%d",x[0].name,x[1].birthday.year); 的输出结果为( )。



  14. A:guangzhou,2008 B:Tianjin,2008 C:guangzhou,2009 D:Tianjin,2009
  15. C语言定义类型名的关键字是( )


  16. A:struct B:define C:typedef D:name
  17. 结构体变量做函数参数,是参传递给形参的是()


  18. A:其余选项都不对 B:结构体变量所有成员的值 C:结构体变量第一个成员的值 D:结构体变量的首地址
  19. 关于链表,以下说法错误的是( )


  20. A:链表中的节点可以删除 B:链表是一种动态数据结构 C:malloc函数是链表专用的处理函数,不能用在其他地方

    D:在链表中插入一个节点不需要改变其他节点的物理位置

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