itgle.com
更多“设有以下语句:typedef struct S{ int g; char h; } T;则下面叙述中正确的是()。A.可以用S定义结构 ”相关问题
  • 第1题:

    若有以下语句:typedef struct S{int 9;char h;}T;以下叙述中正确的是( )。

    A.可用s定义结构体变量

    B.可用T定义结构体变量

    C.S是struct类型的变量

    D.T是struct S类型的变量


    正确答案:B
    本题考查typledef重新声明一种结构体类型,那么T为结构体类型,而不是结构体变量,所以B选项正确。

  • 第2题:

    设有以下语句: typedef struct TT {char c; int a[4];}CIN; 则下面叙述中正确的是( )。

    A.可以用TT定义结构体变量

    B.TT是struct类型的变量

    C.可以用CIN定义结构体变量

    D.CIN是struct TT类型的变量


    正确答案:C
    解析:将题目中的定义语句去掉前面的typedef和后面的CIN(分号保留),就是一条完整的结构体定义语句,其中struct是说明符,TT是结构体名,大括号里面的是结构体成员的定义。此时要声明该结构体变量时需要使用struct加结构体名一起来声明,structTT一起构成一个结构体类型,就好像字符类型char。若只去掉前面的typedef,就是一条结构体定义同时声明个结构体变量CIN的语句,因为CIN的前面部分是structTT的完整写法,可以看作是structTT。C语言允许用typedef说明一种新类型名,其语法格式为:typedef类型名标识符;以后就可以用该标识符来代替被说明的类型名了。因此,当前面存在typedef时,该语句就变成了给structTT的定义一个新的名称CIN。所以,此时的CIN是一个结构体类型,它相当于structTT,即可以和char一样单独用来声明该结构体变量,而TT只是一个结构体名,不能单独用来声明变量。所以,4个选项中C符合题意。

  • 第3题:

    设有以下语句 typedef struct s {int g;char h;}T 则下面叙述中正确的是

    A.可用S定义结构体变量

    B.可以用T定义结构体变量

    C.S是struct类型的变量

    D.T是structS类型的变量


    正确答案:B
    解析:结构体类型的定义格式为
      struct 结构体名
     {成员说明列表};
      结构体变量的定义有3种形式:第一种:定义结构体类型的同时定义结构体变量如: street结构体名{成员说明列表}变量;第二种先定义一个结构体类型,然后使用该类型来定义结构体变量,如:struct student{成员说明列表};student变量;第三种:定义一个无名称的结构体类型的同时定义结构体变量,如:struct student{成员说明列表}变量。

  • 第4题:

    若有以下语句: typedef struct S {int g;char h;}T; 以下叙述中正确的是( )。

    A.可用S定义结构体变量

    B.可用T定义结构体变量

    C.S是struct类型的变量

    D.T是struct S类型的变量


    正确答案:B
    语句typedefstructS{intg;charh;)T的作用是用T作为structS{intg;charh;)的简写,所以选B。

  • 第5题:

    若有以下语句

    typedef struct S

    {int g;char h;}T;

    以下叙述中正确的是( )。

    A.可用S定义结构体变量

    B.可用T定义结构体变量

    C.S是struct类型的变量

    D.T是struct S类型的变量


    正确答案:B
    解析:语句typedef struct S{int g;char h;}T的作用是用T作为struet S{int g;char h;)的简写,所以选B。