admin 管理员组

文章数量: 1184232


2024年3月20日发(作者:c语言中逗号表达式的运算)

2019数组、结构体练习

2-1设有数组定义

char array [ ]="China"

; 则数组 array所占的空间为(C)

A.4个字节

B. 5个字节

C.6个字节

D.7个字节

2-2数组定义为

int s[3][2]={1, 2, 3, 4, 5, 6}

,数组元素(B )的值为4

A.

s[3][0]

B.

s[1][1]

C.

s[1][2]

D.

s[0][1]

2-3对于以下结构定义,

++p->str

中的

++

加在(C)

struct {

int len;

char *str;

} *p;

A.指针

str

上 B.指针

p

上 C.

str

指的内容上 D. 以上均不是

2-4以下哪个选项中的

p

不是指针(C)

A.

int **p

B.

int (*p)[5];

C.

int *p[6];

D.

struct Stu{

char name[20];

int age; }*p, q;

2-6定义如下结构体:

struct sk

{

int a;

float b;

}data, *p;

若指针p指向结构体变量data,即有p = &data; ,则对结构体成员a的正确引用(B)

A.

(*p).data.a

B.

(*p).a

C.

p->data.a

D.

.a

2-7下面的这个循环的循环次数是(B)

for(int i=0,j=10; i=j=10; i++,j--)

A.语法错误,不能执行

B. 无限次

C. 10

D. 1

2-9有以下函数:

char fun(char *p) { return p; }

该函数的返回值是(A)

A.无确切的值

B.形参 p 中存放的地址值

C.一个临时存储单元的地址

D.形参 p 自身的地址值

2-10以下不正确的赋值或赋初值的方式是(C)

A.

char str[]="string";

B.

char str[7]={'s', 't', 'r', 'i', 'n', 'g'};

C.

char str[10];str="string";

D.

char str[7]={'s', 't', 'r', 'i', 'n', 'g', ’0’};

2-11以下代码:

struct Student{

int n;

struct Student * next;

};

struct Student a[3]={5,&a[1],7,&a[2],9, NULL};

struct Student *p;

p=a;

那么,以下表达式不能够正确地访问到第3个结构体数组元素a[2]的成员n(其值为9)的是(C)

A.

p[2].n

B.

(p+2)->n

C.

*(p+2).n

D.

p->next->next->n

2019指针练习

2-1若

p1

p2

都是整型指针,

p1

已经指向变量

x

,要使

p2

也指向

x

, (A)是正确的

A.

p2 = p1;

B.

p2 = **p1;


本文标签: 结构 数组 表达式 地址 初值