有下列表示按钮的结构体和声明语句 struct BUTTON{ int x,y; int width,height; char name[20]; }; struct BUTTON top[10],*p=top; 下列哪个输入“按钮”名称的语句是正确的?(多选题)A.cin>>p.name;B.cin>>p->name;C.cin>>p[0]->name;D.cin>>p[0].name;

题目

有下列表示按钮的结构体和声明语句 struct BUTTON{ int x,y; int width,height; char name[20]; }; struct BUTTON top[10],*p=top; 下列哪个输入“按钮”名称的语句是正确的?(多选题)

A.cin>>p.name;

B.cin>>p->name;

C.cin>>p[0]->name;

D.cin>>p[0].name;


相似考题
参考答案和解析
cin>>p->name;;cin>>p[0].name;
更多“有下列表示按钮的结构体和声明语句 struct BUTTON{ int x,y; int width,height; char name[20]; }; struct BUTTON top[10],*p=top; 下列哪个输入“按钮”名称的语句是正确的?(多选题)”相关问题
  • 第1题:

    下列语句段中,正确的是( )。

    A.struct{int x;float y;int a[2];unsigned b[3];char name[10];};

    B.struct stu{unsigned a[3];unsigned b[4];}x;int*p=&x.a;

    C.struct stu{int a;float x[4];}y={1,1.0};float data=y.x;

    D.struct nd{int a,b;unsigned c[2]=5;};


    正确答案:A
    解析: 本题主要考查的知识点是结构类型的概念和定义,结构定义的一般形式:
    struct结构类型名称
    { 数据类型 成员名1;
    数据类型 成员名2;

    数据类型 成员名n;
    };
    struct为关键字,是结构的标识符;{}中包围的是组成该结构的成员项;每个成员的数据类型既可以是简单的数据类型,也可以是复杂的数据类型。整个定义作为一个完整的语句,用分号结束。结构类型名称是可以省略的,此时定义的结构称为无名结构。

  • 第2题:

    下面结构体的定义语句中,错误的是( )。 A.struct ord{int x;int Y;int Z;};struet ord a;SXB

    下面结构体的定义语句中,错误的是( )。

    A.struct ord{int x;int Y;int Z;};struet ord a;

    B.struct ord{int x;int y;int Z;}struct ord a;

    C.struct ord{int X;int Y;int Z;}a;

    D.struct{int X;int y;int Z;}a;


    正确答案:B
    结构体定义的类型说明的一般形式为:struct结构体标识名{类型名1结构成员名表l;类型名2结构成员名表2;···};。注意:①结构体说明同样要以分号结尾;②紧跟在结构体类型说明之后进行定义;③在说明一个无名结构体类型的同时,直接进行定义;④先说明结构体类型,再单独进行变量定义等。所以B选项错误。

  • 第3题:

    设有以下语句: struct SS { int no; char name[10];}PERSON; 则下面叙述中错误的是 ( )

    A.struct是结构体类型的关键字

    B.struct SS是结构体类型

    C.PERSON是结构体类型名

    D.name是结构体成员名


    正确答案:C

  • 第4题:

    若定义下列结构体,结构体变量p的出生年份赋值正确的语句是( )。 struct st { int x; int y; int z; } struct worker { char name[20]; char sex; struct st birth; }p;

    A.x=1987

    B.birth.x=1987;

    C.p.birth.x=1987;

    D.p.x=1987;


    正确答案:C
    解析: 本题主要考查怎样为嵌套定义的结构中的成员赋值:由于worker中的birth是一个st型的结构,在给birth赋值时,不能将birth作为一个整体,要用“.”运算再深入一层访问到最基本的成员x、y、z。

  • 第5题:

    设有下列说明语句: strcut str {int x; float y; char z;}st; 则下列的叙述中不正确的是( )。

    A.struct是结构体类型的关键字

    B.st是结构体类型名

    C.x、y、x都是结构体成员名

    D.struct str是结构体类型名


    正确答案:B
    解析:本题主要考查结构类型的定义:struct是结构体类型的关键字:structstr是结构体类型名;x、y、z都是结构体成员名:st是结构变量名。

  • 第6题:

    设定义下列结构体,结构体变量p的出生年份赋值正确的语句是( )。 stmct st { int x; int y; int z; } struct worker { char name[20]; char sex; struct st birth; }p;

    A.x=1987

    B.birth.x=1987;

    C.p.birth.x=1987;

    D.p.x=1987;


    正确答案:C
    解析:本题主要考查怎样为嵌套定义的结构中的成员赋值:由于worker中的birth是一个st型的结构,在给birth赋值时,不能将 birth作为一个整体,要用“.”运算再深入一层访问到最基本的成员x、y\z。

  • 第7题:

    下面结构体的定义语句中,错误的是( )。

    A.struct ord{int x;int Y;int z;}struct ord a;

    B.struct ord{int x;im Y;im z;};struct ord a;

    C.struct ord{int x;int Y;int Z;}a;

    D.struct{int x;int Y;int z;}a;


    正确答案:A
    A选项stnletonl{intx;inty;int2;struetoraa;错误,不能在定义结构体的同时,又用结构体类型名定义变量。应该写成B选项或者D选项的格式。

  • 第8题:

    设有以下声明语句 street ex { int x;float y;char z;} example; 则下面的叙述中不正确的是 ______ 。

    A.struct是结构体类型的关键字

    B.example是结构体类型名

    C.x,y,z都是结构体成员名

    D.struct ex是结构体类型


    正确答案:B
    解析:example是结构体变量名。

  • 第9题:

    设有下列说明语句:

    strcut str

    {int x;float y;char z;}st;

    则下列的叙述中不正确的是( )。

    A.struct是结构体类型的关键字

    B.st是结构体类型名

    C.x、y、z都是结构体成员名

    D.struct str是结构体类型名


    正确答案:B
    解析:本题主要考查结构类型的定义:struct是结构体类型的关键字;stmct str是结构体类型名;x、y、z都是结构体成员名;st是结构变量名。

  • 第10题:

    设有以下声明语句 struct ex { int x;float y;char z;}example; 则下面的叙述中不正确的是______。

    A.struct是结构体类型的关键字

    B.example是结构体类型名

    C.x,y,z都是结构体成员名

    D.struct ex是结构体类型


    正确答案:B
    解析:example是结构体变量名。

  • 第11题:

    下列语句段中,正确的是( )。

    A.struct { int x; float y; int a[2]; unsigned b[3]; char name[ 10]; };

    B.struct stu { unsigned a[3]; unsigned b[4]; }x; int *p=& x.a;

    C.street stu { int a; float x[4]; }y={1,1.0}; float data=y.x;

    D.struct nd {int a,b; unsigned c[2]=5; };


    正确答案:A
    解析:本题主要考查的知识点是结构类型的概念和定义,结构定义的一般形式是:struct结构类型名称{数据类型成员名1;数据类型成员名2;…数据类型成员名n;};struct为关键字,是结构的标识符:{}中包围的是组成该结构的成员项;每个成员的数据类型既可以是简单的数据类型,也可以是复杂的数据类型。整个定义作为一个完整的语句,用分号结束。结构类型名称是可以省略的,此时定义的结构称为无名结构。

  • 第12题:

    单选题
    下面结构体的定义语句中,错误的是(  )。
    A

    struct ord{int x;int y;int z;};struct ord a;

    B

    struct ord{int x;int y;int z;}struct ord a;

    C

    struct ord{int x;int y;int z;}a;

    D

    struct {int x;int y;int z;}a;


    正确答案: A
    解析:
    C语言中结构体变量的定义有三种方法:①定义结构体类型的同时定义结构体变量,如C项;②使用无名结构体类型定义结构体变量,如D项;③先定义结构体类型,后定义结构体变量,如A项,B项错在分别定义结构体类型与结构体变量时需要用“;”隔开。故答案选择B选项。

  • 第13题:

    下面结构体的定义语句中,错误的是( )。

    A.struct ord{int x;int y;int z;};struct ord a;

    B.struct ord{int x;int y;int z;};ord a;

    C.struct ord{int x;int y;int z;}a;

    D.struct{int x;int y;int z;}a;


    正确答案:B

  • 第14题:

    有以下定义和语句: struct students {int num;char name[20];char c; struct {int grade1;int grade2;}s; }; struct students w,*pw; *pw=w; 下列赋值语句不正确的是( )。

    A.w.num=1002;

    B.w.grade1=85;

    C.pw->num=1002;

    D.w.s.grade2=85;


    正确答案:B

  • 第15题:

    设有定义:

    struct person

    {int ID;char name[12];}P;

    请将scanf(“%d”, 【 】);语句补充完整,使其能够为结构体变量P的成员ID正确读人数据。


    正确答案:&p.ID
    &p.ID 解析:结构体成员的引用通过符号“.”来表示,通过scard语句对变量进行赋值时,要用取地址符&。

  • 第16题:

    设定义下列结构体,结构体变量p的出生年份赋值正确的语句是( )。

    Struct st

    { int x;

    inty;

    int z;

    }

    Struct worker

    { char name[20];

    char sex;

    struct st birth;

    }p;

    A.x=1987

    B.birth.x=1987;

    C.p.birth.x=1987;

    D.p.x=1987;


    正确答案:C
    解析:本题主要考查怎样为嵌套定义的结构中的成员赋值:由于worker中的birth是一个st型的结构,在给birth赋值时,不能将birth作为一个整体,要用“.”运算再深入一层访问到最基本的成员x、y、z。

  • 第17题:

    下面结构体的定义语句中,错误的是

    A.struct ord{int x;int y;int z;};struet ord a;

    B.atruet ord{int x;int y;int z;}struct ord a;

    C.struet ord{int x;int y;int z;}a;

    D.struct{int x;int y;int z;)a;


    正确答案:B
    解析:定义结构体变量有三种方式:①先声明结构体类型,再定义变量名,如选项A)所示;②在声明类型的同时定义变量,如选项C)所示;③直接定义结构体类型变量,如选项D)所示。 

  • 第18题:

    设有以下说明语句: struct ex { int x;floct y;char z;} example; 则下面的叙述中不正确的是 ( )

    A.struct是结构体类型的关键字

    B.example是结构体类型名

    C.x,y,z都是结构体成员名

    D.struct ex是结构体类型


    正确答案:B

  • 第19题:

    设有以下说明语句: struct ex {int x;float y;char z; }example;在下面的叙述中,不正确的一条是______。

    A.struct是结构体类型的关键词

    B.example是结构体类型名

    C.x,y,2都是结构体成员名

    D.struct ex是结构体类型


    正确答案:B
    解析:example是结构体类型变量名,因此选项B的说法是不正确的。

  • 第20题:

    下列语句段中,正确的是( )。

    A.struct {int x; float y; int a[2]; unsigned b[3]; char name[10]; };

    B.structstu { unsigneda[3]; unsigned b[4]; }x; int*p=&x.a;

    C.struc tsu { int a; float x[4]; }y={1,1.0}; floatdat a=y.x;

    D.stmct nd {int a,b; unsigned c[2]=5; };


    正确答案:A
    解析:本题主要考查的知识点是结构类型的概念和定义,结构定义的一般形式是:
      struct 结构类型名称
      { 数据类型 成员名1;
      数据类型 成员名2;
      数据类型 成员名n;
      };
      struct为关键字,是结构的标识符;{}中包围的是组成该结构的成员项;每个成员的数据类型既可以是简单的数据类型,也可以是复杂的数据类型。整个定义作为一个完整的语句,用分号结束。结构类型名称是可以省略的,此时定义的结构称为无名结构。

  • 第21题:

    下列语句段中,正确的是( )。

    A.street { int x; float y; int a[2]; unsigned b[3]; char name[ 10]; };

    B.struct stu { unsigned a[3]; unsigned b[4]; }x; int *p=& x.a;

    C.stmct stu { int a; float x[4]; }y={1,1.0}; float data=y.x;

    D.struct nd { int a,b; unsigned c[2]=5; };


    正确答案:A
    解析:本题主要考查的知识点是结构类型的概念和定义,结构定义的一般形式是:struct结构类型名称{数据类型成员名1;数据类型成员名2;…数据类型成员名n;};struct为关键字,是结构的标识符:{}中包围的是组成该结构的成员项;每个成员的数据类型既可以是简单的数据类型,也可以是复杂的数据类型。整个定义作为一个完整的语句,用分号结束。结构类型名称是可以省略的,此时定义的结构称为无名结构。

  • 第22题:

    下列关于结构型变量的定义语句中,错误的是( )

    A.typedef struct CCC

    B.define GGG struct { char name[20];GGG CCC { char name[20]; int age; int age; }GGG; }; GGG abc ; GGG CCC abc;

    C.struct

    D.struct { char name[20]; { char name[20]; int age; int age; }ccc; }abc; CCC abc;


    正确答案:C
    分析备选答案A:利用“typedef”定义了用户自定义的数据类型符“GGG”,这个用户自定义的数据类型符是含有两个成员的结构型CCC,所以语句“GGGabc”是定义结构型CCC的变量abc,语法没有错误。分析备选答案B:利用“#define”定义了宏名“GGG”,这个宏名第一次出现是定义结构型CCC,第二次是定义了结构型CCC的变量allc,所以语法上没有错误。分析备选答案C:这是定义一个没有名称的结构型,同时定义了这种结构型的变量CCC,接着的语句“CCCabc;”显然是错误的,因为CCC是变量名,不是数据类型符,该答案符合题意。至于备选答案D:这是标准的通过定义没有名称的结构型来定义该结构型的变量abc,语法上没有错误。

  • 第23题:

    有以下说明语句:struct Worker{int no;char name[20];};Worker w,*p=&w;则下列错误的引用是()

    • A、w.no
    • B、p->no
    • C、(*p).no
    • D、*p.no

    正确答案:D

  • 第24题:

    单选题
    有以下说明语句:struct Worker{int no;char name[20];};Worker w,*p=&w;则下列错误的引用是()
    A

    w.no

    B

    p->no

    C

    *p).no

    D

    *p.no


    正确答案: A
    解析: 暂无解析