先执行++a,表达式++a的值为1;再执行++b,表达式++b的值为1,由此可确定(++a‖++b)值为1,因此执行++c
先执行++a,表达式++a的值为1,由此可确定(++a‖++b)值为1,因此执行++c
先执行++b,表达式++b的值为1;再执行++a,表达式++a的值为1,由此可确定(++a‖++b)值为1,因此执行++c
先执行++a,++b,++c,++d,使得a,b,c,d的值都为1,由此可确定(++a‖++b)值为1,因此执行++c
第1题:
若有定义语句:int a[3][6]; ,按在内存中的存放顺序,a 数组的第 10 个元素是
A ) a[0][4]
B)a[1][3]
C)a[0][3]
D)a[1][4]
第2题:
若有定义int a=5,b=7;,则表达式a%=(b%2) 运算后,a的值为( )。
A.0
B.1
C.11
D.3
第3题:
若有定义 int x,y; 并已正确给变量赋值,则以下选项中与表达式 (x-y)?(x++) : (y++) 中的条件表达式 (x-y) 等价的是
A)(x-y>0)
B)(x-y<0)
C)(x-y<0||x-y>0)
D)(x-y==0)
第4题:
若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )。
A.int a[5]={0;
B.int b[]:{0,0,0,0,0};
C.int c[2+3];
D.int i=5,d[i];
第5题:
若有以下程序段int m=0xabc,n=0xabc;m-=n;printf("%X\n",m);执行后输出结果是
A.0X0
B.0x0
C.0
D.0XABC
第6题:
若有定义语句: int a[2][3],*p[3]; ,则以下语句中正确的是
A ) p=a;
B)p[0]=a;
C) p[0]=&a[1][2];
D)p[1]=&a;
第7题:
若有定义语句int b=2;,则表达式(b<<2)/(3||b)的值是( )。
A.4
B.8
C.0
D.2
第8题:
若有定义: int w[3][5]; ,则以下不能正确表示该数组元素的表达式是
A)*(*w+3)
B)*(w+1)[4]
C)*(*(w+1))
D)*(&w[0][0]+1)
答案C
解析:在 C 语言中,二维数组的名字表示的是二维数组的地址,表达式 * ( w+1 )表示的是二维数组的第 1 行的第 2 元素。在其前面再加上 * ( * ( w+1 ) )就是错误的表达式。
第9题:
若有以下程序段: int m=0xabc, n=0xabc; m-=n; printf("% X\n", m); 执行后的输出结果是______。
A.0X0
B.0x0
C.0
D.0XABC
第10题:
以下对一维数组c进行正确的定义初始化的语句是A.int c[10]=0; B.int c[10]={0}*10; C.int c[1]={0,0,0,0,0,0,0}; D.int c[10]={0};