以下选项中,能定义S为合法的结构体变量的是( )。A.B.C.D.

题目

以下选项中,能定义S为合法的结构体变量的是( )。

A.

B.

C.

D.

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设有以下语句:Typedef struct TT{char c; int a[4];}CIN;则下面叙述中错误的是( )。A.不可以用TT定义结构体变量B.TT是结构体标识名C.可以用CIN定义结构体变量D.CIN是struct TT类型的变量


正确答案:D
类型定义;CIN不是struct II类型的变量,它是struct II类型的代替,即可以用它定义结构体变量。

第2题:

有以下结构体说明、变量定义和赋值语句 struct STD { char name[10]; int age; char sex; }s[5],*ps; ps=&s[0]; 则以下scanf函数调用语句中错误引用结构体变量成员的是______。

A.scanf("%s",s[0].name);

B.scanf("%d",&s[0].age);

C.scanf("%c",&(ps->sex));

D.scanf("%d",ps->age);


正确答案:D
解析:要给结构体成员输入数据,在scanf语句中需要使用结构体成员的地址。函数scanf是C语言的标准输入函数,其作用是在终端设备上输入数据,而且要求输入项必须是某个存储地址。选项A中是引用结构体数组s的第0个元素s[0]的name成员,name是包含10个元素的数组,数组名就表示数组的地址,也就代表s[0].name的地址,所以选项A是正确的。选项B显然也是正确的,选项C是先用指针变量引用结构体的成员sex后取它的地址,也是正确的。选项D用指针变量引用结构体的成员sex后没有再继续取其地址,所以是错误的。

第3题:

设有以下语句

typedef struct TT

{char c,int a[4];} CIN;

则下面叙述中正确的是

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

B)TT 是 struct 类型的变量

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

D)CIN 是 struct TT 类型的变量


正确答案:C
答案 C
解析:在 C 语言中, typdef 用于说明一种新的类型名,本题中的 CIN 被定义为一种新的类型名,我们可以用它来定义一个结构体变量。

第4题:

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

A.

B.

C.

D.


正确答案:A
本题考查的是typedef的用法和结构体变量的定义方法。typedef可用于声明结构体类型,其格式为“typedefstruct{结构元素定义}结构类型;”。本题正确答案为A)。

第5题:

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

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

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

C.S是struct类型的变量

D.T是struct S类型的变量


正确答案:B
解析:可以用typedef定义新的类型名来代替已有的类型名。T是所定义的新的类型名,它代表题中定义的一个结构体类型,这样就可以用T定义结构体变量了。

第6题:

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

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

B.TT是struct类型的变量

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

D.CIN是struct TT类型的变量


正确答案:D
解析:此题中说明了—个结构体类型struct TT的同时,定义了一个结构体变量CIN,结构体变量中的各成员在内存中按说明中的顺序依次排序。

第7题:

下列变量定义中,错误的是______。

A) int x=3;

B) float f;d;

C) String s="Hello!";

D) boolean b=true;

A.

B.

C.

D.


正确答案:B

第8题:

有以下结构体说明、变量定义和赋值语句

struct STD

{ char name[10];

int age;

char sex;

} s[5],*ps;

ps=&s[0];

则以下 scanf 函数调用语句中错误引用结构体变量成员的是

A)scanf("%s",s[0].name);

B)scanf("%d",&s[0].age);

C)scanf("%c",&(ps->sex));

D)scanf("%d",ps->age);


正确答案:D
答案 D
解析:在 scanf 函数中,第 2 个参数应该表示为地址变量,而选项 D 只是一个具体的值,而并不是一个地址值。

第9题:

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

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

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

C.S是struct类型的变量

D.T是stnictS类型的变量


正确答案:B
解析:本题使用typedef关键字将整个结构体的定义部分stmctS{intg;charh;}声明为别名T。此时T是一个结构体类型,可以直接使用T声明该结构体变量,而S只是一个结构体名,必须结合struct关键字才能声明变量。故本题的正确答案为B。

第10题:

以下选项中,能定义s为合法的结构体变量的是( )。

A.typedef struct abc { double a; char b[10]; } s;

B.struct { double a; char b[10]; }s;

C.struct ABC { double a; char b[10]; } ABC s;

D.typedef ABC { double a; char b[10]; } ABC s;


正确答案:B
解析:定义一个结构体类型的变量,可采用三种方法:①先定义结构体类型,再定义变量名。②在定义类型的同时定义变量。③直接定义结构体类型变量,即不出现结构体名。选项B)符合第三种定义方法。

更多相关问题