c语言1x1234等于多少,新手的几个C语言问题!~~求助!1.设x为 – 手机爱问

76d09982aae9d437fc0b80239e11e9af.png

2006-04-17

1.设x为int 型变量,执行以下语句,x=10;x+=x-=x-x;

x 的值为??

2.若定义x 和y 为double 型变量,表达式t=1,t+5,t++的值是??

3.若t为double 型变量,则表达式x=1,y=x+3/2的值是??

4.设x,y,z,均为int型变量,执行以下语句:x=y=z=1;

t=x++||++y&&++z;后t的值为??

1,

我们先来说明一下“复合赋值运算符”

种类:+= -= *= /= %= 《= 》= &= ^= |=

含义: exp1 op= exp2 等价于 exp1 = exp1 op exp2

总的来说,x+=x-=x-x 等价于 x=x+(x=x-(x-x))

我们一步一步来看:

第一步:

x-=x-x 等价为 x=x-(x-x),把右边计算一下,它等价为 x=x。

“x=x”作为一个表达式,它的值就是 x。

也就是说,x-=x-x 的值为 x。

(在这个运算过程中只有一个赋值过程,就是把x的值赋给x,所以x的值并没有变化)

第二步:

把“x-=x-x”的值为 x代...全部

1,

我们先来说明一下“复合赋值运算符”

种类:+= -= *= /= %= 《= 》= &= ^= |=

含义: exp1 op= exp2 等价于 exp1 = exp1 op exp2

总的来说,x+=x-=x-x 等价于 x=x+(x=x-(x-x))

我们一步一步来看:

第一步:

x-=x-x 等价为 x=x-(x-x),把右边计算一下,它等价为 x=x。

“x=x”作为一个表达式,它的值就是 x。

也就是说,x-=x-x 的值为 x。

(在这个运算过程中只有一个赋值过程,就是把x的值赋给x,所以x的值并没有变化)

第二步:

把“x-=x-x”的值为 x代入“x+=x-=x-x”中,有

x+=x 即 x=x+x ——它表示把两个x相加,并把相加的和赋值给x。

所以,x=10+10=20。

2,

因为:t为double 型变量,

t=1,是把 1(它本来是int型的) 转换为 double型的 1,再赋值给 t。

所以,t=1的值是,double型 的 1

在“t+5”中,应把int型的 5 转换为double型的 5,再和t相加。

所以,最后的“t+5”是 double型

在“t++”等价于“t=t+1”,与上面相同,“t+1”是double型的,然后把,t+1 的值赋给 t,同样还是 double型的。

3,

因为:x 和y 为double 型变量

“x=1”,这与2小题中“t=1”是一样的。

x=1的值是double型的。

“y=x+3/2”中,根据优先级别,应先计算除号 即先算“3/2”。因为 3、2 都是int型。所以,3/2 也为int型,其值为int型的 1。

这个int型的 1 再与double型的x 相加。

这时,int型的 1 被转换成double型的 1。

所以,“y=x+3/2”的值为 double型的 x+1。0

4,

当执行 x=y=z=1 后,x、、z的值都是 1。

这个题主要是是要搞清楚“t=x++||++y&&++z”中运算的先后顺序。

下面我用括号来表示他们之间的先后顺序。

t={(x++)||[(++y)&&(++z)]}

(注意,这里的“x++”,它的优先级虽然高,但它的作用是在整个语句执行完后,再改变x的值。)

所以,t={(x++)||[(++y)&&(++z)]} 等价于 以下两个语句,

t={x||[(++y)&&(++z)]};x=x+1;

“++y”和“++z”的值都为 2,

再算 2&&2,其结果为真,数值上表示为 1。

再算 x||1,起结果也为真,数值上表示为 1。

最后,t=1。收起

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值