第一次 :n-- 为6n使用时是5 --n为4;
第二次 :n-- 为4n使用时晌没是3 --n为2;
第三次 :n-- 为2n使用时是1 --n为0;
从第一次循环中我们得到打印的结果每次-2,循环三次,所以结果为420
15 b==c中的==为判断符号,其结果只有两种0或1,条件成立返回1,不成则立毕薯返回0
16 x为二维数组
| 0 1 2 |
| 3 4 5 |
| 6 7 8 |
其for 循环的结果为0,1,2所以其取值为x[0][2],x[1][1],x[2][0],结果就是246
1:已知a=13,b=6,a%b的十进制数值为()a%b,整数%整数,表示求余数,因此13%6=1
2:设x的值为15,n的值为了2,则表达式x%=(n+3)运算后的x的值是()
x%=(n+3)相当于x=x%(n+3),x%=n+3也表示x=x%(n+3),类似的有+=,-=,*=,/=
因此x=x%(n+3),x=15%5,x=0.
3:int x=y=4,z=2x=y==z则x的值为()
x=y=4,等号是右结合的,也就是这种情况下要从右向左计算,因此相当于y=4x=y
而x=y==z,==的优先级比=高,因此相当于x=(y==z),y=4,z=2所以y==z不成立,所以y==z这个表稿纯渣达式的值是false,也就是0,所以x=0
4:若有定义:int a=10,b=9,c=8接着顺序执行后下列语句是,变量b中的值是()
c=(a-=(b-5))
c=(a%11)+(b=3)
由上面的几题为基础裤高,
c=(a-=(b-5))相当于c=(a=a-(b-5)),c=(a=10-(9-5)),c=(a=6),所以a=6,c=6,b=9(表达式b-5并没有改变b的值)
c=(a%11)+(b=3)相当于,c=6%11+3=6+3=9,所以a=6,c=9,b=3
5:int x=2,y=2,z=0则表达式的x==y>z的值为()
x==y>z这个一个复合逻辑表达式,键悄>优先级高于==,所以相当于x==(y>z),y>z成立,所以y>z==1,x==1不成立,所以表达式的值为0
6:若有以下定义和语句int a[4]={0,1,2,3},*p
p=&a[2]则*--p的值是()
p=&a[2]表示p是a[2]的地址
*--p相当于*(--p),就是先将p减1,也就是a[1]的地址,然后用* *** 作符取出地址中的值,也就是1
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)