设有如下说明: typedef struct {int n; char c; double x;) STD; 则以下选项中,能正确定义结构体数组并赋初值的语句是( )。A.STD tt[2]={{1,'A',62},{2,'B',75}};B.STD tt[2]={1,"A",62},2,"B",75};C.stmc tt[2]={{1,'A'),{2,'B'}};D.struc tt[2]={{1,"A",62.5),{2,"B",75.0}};

题目

设有如下说明: typedef struct {int n; char c; double x;) STD; 则以下选项中,能正确定义结构体数组并赋初值的语句是( )。

A.STD tt[2]={{1,'A',62},{2,'B',75}};

B.STD tt[2]={1,"A",62},2,"B",75};

C.stmc tt[2]={{1,'A'),{2,'B'}};

D.struc tt[2]={{1,"A",62.5),{2,"B",75.0}};


相似考题
更多“设有如下说明:typedef struct{intn;charc;doublex;)STD;则以下选项中,能正确定义结构体数组并赋 ”相关问题
  • 第1题:

    设有如下说明typedef struct{ int n; char c; double x;}STD;则以下选项中,能正确定义结构体数组并赋初值的语句是A.STD tt[2]={{1,’A’,62},{2,’B’,75}}; B.STD tt[2]={1,"A",62,2,"B",75};C.struct tt[2]={{1,’A’},{2,’B’}}; D.struct tt[2]={{1,"A",62.5},{2,"B",75.0}};


    正确答案:C
    本题主要考查关键字typedef的作用和结构体的初始化。C语言不仅提供了丰富的数据类型,而且还允许由用户自己定义类型说明符,也就是说,允许由用户为已存在的数据类型名定义一个“别名”。类型定义符typedef即可用来完成此功能。说明新类型名的语句一般形式为:
             typedef   类型名   标识符;
    这里的“类型名”必须是在此语句之前已有定义的类型标识符,可以是任何基本类型、结构或联合类型符号。
    在本题中,通过题目中程序的定义可以知道,STD为该结构体的类型,而不是结构体变量,因此,STD tt[2]的声明是正确的。
    由于结构体的第三个成员变量为双精度型,而在选项A中,输入与其对应的值是整型,数据类型不匹配,因此不正确。
    由于结构体的第二个成员变量为字符型,而在选项B和选项D中,用双引号引起,表示字符串,而不是单个字符,因此不正确。
    在选项C中,虽然缺少一个元素,但系统提供了一个默认的值0。因此,这个赋值语句是正确的。

  • 第2题:

    设有如下说明: typedef struct { int n; char c;double x;}STD; 则以下选项:能正确定义结构体数组并赋初值的语句是( )。

    A.STDtt[2]={{1,'A',62},{2,'B',75}};

    B.STDtt[2]={1,"A",62,2,"B",75};

    C.struet tt[2]={ {1,'A'},{2,'B'}};

    D.struct tt[2]={{1,"A",62.5},{2,"B",75.0}};


    正确答案:A
    解析:本题定义了一个结构体类型并白定义类型名为STD,用户自定义类型后,就可以利用它进行变量与数组的定义。定义的方法,与C语言中其它类型的定义完全一样,定义结构型数组并赋初值时,每个元素用一对“{”和“厂括起来,字符型元素用…”括起来,选项A、B、C、D中只有选项A符合条件。所以,A选项为所选。

  • 第3题:

    以下结构体类型说明和变量定义中正确的是()。

    A.typedef struct {int n; char c;} REC; REC x,y;

    B.struct REC; {int n; char c;}; REC x,y;

    C.typedef struct REC ; {int n=0; char c=’A’; } x,y;

    D.struct {int n; char c; } REC x,y;


    typedef struct
    { int n;
    char c;
    }REC;
    REC t1,t2;

  • 第4题:

    设有如下说明 typedef struct {int n;char c;double x;}STD; 则有以下选项,能正确定义结构体数组并赋初值的语句是

    A.STD tt[2]={{1,'A',62},{2,'B',75}};

    B.STD tt[2]=“1,"A",62,2,"B",75};

    C.struc tt[2]={{1,'A'},{2,'B'}};

    D.struct tt[2]=<<1,"A",62.5},{2,"B",75.0}};


    正确答案:A
    解析:本题考查结构体的基本知识。因为有了typedef,故可以省略struct关键词而直接使用STD名称。结构体数组中的元素在赋值时要求用大括号包含,故答案为A。

  • 第5题:

    设有如下说明 typedef struct {int n;char c;double x;}STD; 则以下选项中,能正确定义结构体数组并赋初值的语句是

    A.STD tt[2]={{l,'A',62},{2,'B',75}};

    B.STD tt[2]={1,"A",62,2,"B",75};

    C.streetn[2]={{1,'A'},{2,'B'}};

    D.struct tt[2]={{1,"A",62.5},{2,"B",75.0}};


    正确答案:A
    解析:本题定义了一个结构体类型并自定义类型名为STD,用户自定义类型后,就可以利用它进行变量与数组的定义。定义的方法,与C语言中其他类型的定义完全—样,定义结构型数组并赋初值时,每个元素用一对“{”和“}“括起来,字符型元素用”'”括起来。