设有以下语句typedefstruct s{int g;char h;}T则下面叙述中正确的是A.可用S定义结构体变量B.可以

题目

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

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

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

C.S是struct类型的变量

D.T是structS类型的变量

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

第1题:

设有如下程序段

char s[20]= "Be i jing",*p;

p=s;

则执行 p=s; 语句后,以下叙述正确的是

A) 可以用 *p 表示 s[0]

B)s 数组中元素的个数和 p 所指字符串长度相等

C)s 和 p 都是指针变量

D) 数组 s 中的内容和指针变量 p 中的内容相等


正确答案:A

第2题:

设有以下函数

void fun(int n,char * s) { …… }

则下面对函数指针的定义和赋值均是正确的是

A)void (*pf)(); pf=fun;

B)viod *pf(); pf=fun;

C)void *pf(); *pf=fun;

D)void (*pf)(int,char);pf=&fun;


正确答案:A

第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题:

设有以下说明语句

typedef struct

{ int n;

char ch[8];

} PER;

则下面叙述中正确的是

A.PER 是结构体变量名

B.PER是结构体类型名

C.typedef struct 是结构体类型

D.struct 是结构体类型名


正确答案:B
解析:本题中,typedef声明新的类型名PER来代替已有的类型名,PER代表上面指定的一个结构体类型,此时,也可以用PER来定义变量。

第5题:

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

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

B.TT是struct类型的变量

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

D.CIN是struct TT类型的变量


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

第6题:

设有以下说明语句typedefstruct{intn;charch[8];}PER;则下面叙述中的是()。

A、PER是结构体变量名

B、PER是结构体类型名

C、typedefstruct是结构体类型

D、struct是结构体类型名


参考答案:B

第7题:

设有以下语句: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类型的代替,即可以用它定义结构体变量。

第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题:

有以下结构体说明、变量定义和赋值语句 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后没有再继续取其地址,所以是错误的。

第10题:

设有程序段:char s[]=china; char *p ; p=s ; 则下面叙述正确的是( ) 。

A. s 和 p 完全相同

B. 数组 s 中的内容和指针变量 p 中的内容相等

C. s 数组长度和 p 所指向的字符串长度相等

D. *p 与 s[0]相等


正确答案:D

更多相关问题