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

1、设a为5,执行下列语句后,b的值不为2的是:

b=a/2

b=6-(--a)

b=a%2

b=a>3?2:1

2、为表示关系x大于等于y大于等于z,应使用C语言表达式

(x>=Y)&&(Y>=z)

(x>=Y)AND(y>=z)

(x>=Y>=z)

(x>=Y)&(Y>=z)

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

M = = 0

M = = 1

M ! = 0

M ! = 1

4、设有以下定义:
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)

5、以下对枚举类型名的定义中正确的是:

enum s={a,b,c}

enum s {a=9,b=2,c}

enum s={'a', 'b', 'c'}

enum s {'a', 'b', 'c'}

6、以下程序输出的值为?
main()
{ int a[ ]={1,2,3,4,5,6,7,8,9,0},*p;
p=a;
printf("%d\n",*p+9);
}

1

9

10

0

7、若有定义:int a[3][4];不能表示数组元素a[1][1]的是

*(a[1]+1)

*(&a[1][1])

(*(a+1))[1]

*(a+5)

8、若有以下定义和语句:
char c1='b',c2='e';
printf("%d,%c\n",c2-c1,c2-'a'+'A');
则输出结果是

2,M

3,E

2,E

输出项与对应的格式控制不一致,输出结果不确定

9、执行下列语句后,a的值为:
int a;
#define M(x,y) (x*y)
a=M(1+2,3);

9

7

5

以上均不是

10、若x=4,则x*=x+2的值为:

36

24

18

20