如题目或答案有误,请通过BUG反馈告知我们修正,谢谢!

1、若有以下说明和语句,则输出结果是哪一项?
(strlen(s)为求字符串s的长度的函数)
char s[12]="a book!";
printf("%d",strlen(s));

12

8

7

11

2、下列对C语言字符数组的描述中错误的是

字符数组可以存放字符串

字符数组中的字符串可以整体输入、输出

可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值

不可以用关系运算符对字符数组中的字符串进行比较

3、设有定义:struct sk
{int a;float b;}data,*p;
若有p=&data;,则对data中的a域的正确引用是

(*p).data.a

(*p).a

p->data.a

p.data.a

4、若有以下定义和语句:
int w[2][3],(*pw)[3];pw=w;
则对w数组元素的非法引用是

*(w[0]+2)

*(pw+1)[2]

pw[0][0]

*(pw[1]+2)

5、设有以下定义:
int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};
int (*prt)[3]=a, * p=a[0];
则下列能够正确表示数组元素a[1][2]的表达式是

*((*prt+1)[2])

*(*(p+5))

(*prt+1)+2

*(*(a+1)+2)

6、有以下程序段
int k;=0
while(k=1)k++;
while 循环执行的次数是

无限次

有语法错,不能执行

一次也不执行

执行1次

7、对于条件表达式(M)?(a++):(a--),其中的表达式M等价于

M = = 0

M = = 1

M ! = 0

M ! = 1

8、若i、j已定义为int型,则以下程序段中内循环体的总的执行次数是
for(i=5;i>0;i--)
for(j=0;j<4;j++){…}

20

24

25

30

9、循环语句while(!E)中的表达式!E等价于:

E!=0

E!=1

E==0

E==1

10、以下运算符中,运算对象必须是整型的是:

/

%=

!=

〈=