求这几题C语言程序设计题目的解析

求这几题C语言程序设计题目的解析,第1张

14 while循环没有加{ },所以只控制宴数纳printf一条打印语句

第一次 :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


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12457999.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存