C++ 数据类型与表达式的题

1、字符串“\t\v\\\0which\n"的长度是多少?答案是3,求解释。2、设intx=2,y=3,z=4,则下列表达式中值不为1的是()A.'x'&&'z'B.(!... 1、字符串“\t\v\\\0which\n"的长度是多少?答案是3,求解释。

2、设int x=2, y=3, z=4,则下列表达式中值不为1的是( )
A.'x'&&'z' B.(!y=1)&&(!z=0) C.(x<y)&&!z||1 D.x||y+y&&z-y 答案是B,求解释

3、设int x=2, y=4, z=7;,则执行x=y--<=x||x+y!=z后,x,y的值分别是???求解释
展开
 我来答
百度网友6dc5d8b
2013-06-23 · TA获得超过722个赞
知道小有建树答主
回答量:390
采纳率:100%
帮助的人:311万
展开全部
  1. \t 水平制表符一个    \v垂直制表符 一个     \\ 一个反斜杠一个  \0字符串结束总共长度就3

  2. 'x' &&'z' =0x78 && 0x7a 前后都不是0自然不是0

    B 选项你确定你没抄错,这是语法错误的!无语。。。。是(!y==1)&&(!z==0)么

    !y=0 0==1 自然是0             !z=0 ,0==0表达式的值是1   0&& 1 自然就是0

    对于C 先计算x<y 值是1 再计算 1&&!z 值是0,最后计算0||1 自然就是1

    对于Dx||y 值为1           y&&z值为1 ,1+1-y=-1表达式还是1

  3.  执行完后x=1 y=3

+的优先级高于赋值运算符

所以先计算x||x值为1然后加上y 值为5 然后计算y--<=5 为1 然后计算这个1!=z为1 所以x自然就是1算

(有可能不是这样算的,我再分析一下)

事实上是这样的

表达式中出现的运算符优先级 先后顺序是这样的:

--

+

<=

!=

||

=

所以这个表达式等价于

x=((y--<=x)||((x+y)!=z))

就是x=((4<=2)||((2+4)!=7))

x=(0||1)

最后x=1;

y--后等于3

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式