有下列语句:  struct Birthd

题目

有下列语句:  struct Birthday{public int year;  public int month;   public int day;}; struct Student{ int no;  string name;   int age;  public Birthday bir; };  ……  Student Stu;  如果要把Stu的出生年份赋值为1988,正确的语句是()

  • A、 Stu.bir.year=1988;
  • B、 Stu.year=1988;
  • C、 Stu. Birthday.year=1988;
  • D、 Student. Birthday.year=1988;
参考答案和解析
正确答案:A
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

有以下程序段 typedef struct node { int data; struct node *next; } *NODE; NODE p; 以下叙述正确的是( )。

A.p是指向struct node结构变量的指针的指针

B.NODE p;语句出错

C.p是指向struct node结构变量的指针

D.p是struct node结构变量


正确答案:C

第2题:

下列关于结构型、共用型、枚举型的定义语句中,正确的是( )。A.struct ss{int x}B.union uu{int x;}xx=5;C.enum ee{int x};D.struct{int x;};


正确答案:D
定义语句后必须要分号‘;’,所赋初值放在大括号里。枚举类型的基础类型定义在枚举名的后面,如果没有显式声明,则其类型为int型,无需再次声明:int x;

第3题:

有以下程序段

typedef struct node { int data; struct node *next; } *NODE;

NODE p;

以下叙述正确的是

A)p 是指向 struct node 结构变量的指针的指针

B)NODE p ;语句出错

C)p 是指向 struct node 结构变量的指针

D)p 是 struct node 结构变量


正确答案:C

第4题:

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

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

第5题:

有以下说明和定义语句 struct student { int age;char num[8]; struct student stu[3]={{20,"200401"},{21,"200402"},{19,"200403"}}; struct student *p=stu;}; 以下选项中引用结构体变量成员的表达式错误的是

A.(p++)->num

B.p->num

C.(*p).num

D.stu[3].age


正确答案:D
解析:结构体变量也有地址,因此可以把它的地址赋值给一个指针变量,然后通过该指针变量来引用结构体的成员,选项A和选项B就是通过指针变量来引用结构体的成员,也可以通过结构体数组元素的成员引用,而在选项D中stu[3].age不正确,因为结构体数组stu共有三个元素,其下标应该为0,1,2。

第6题:

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

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;


正确答案:B

 

第7题:

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

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

第8题:

( 38 )有以下定义和语句

struct workers

{ int num;char name[20];char c;

struct

{ int day; int month; int year; } s;

} ;

struct workers w,*pw;

pw = &w;

能给 w 中 year 成员赋 1980 的语句是

A ) *pw.year = 198O;

B ) w.year=1980;

C ) pw->year=1980;

D ) w.s.year=1980;


正确答案:D

第9题:

若有下列说明和语句,已知int型数据占2个字节,则下列语句的输出结果是( )。

stmct st

{ char a[15];

int b;

double c;

};

printf("%d",sizeof(struct st));

A.15

B.8

C.25

D.2


正确答案:C
解析:本题主要考查结构体的内存使用:对结构体而言,结构中不同的成员分别使用不同的内存空间,一个结构所占内存空间的大小是结构中每个成员所占内存空间大小的总和,结构中每个成员相互独立。题中int b占2个字节,char a[15]占15个字节,double c占8个字节,所以共25个字节。

第10题:

下面结构体的定义语句中,错误的是( )。 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选项错误。

更多相关问题