设:int a=1,b=2;则表达式(++a==b--)?--a:++b的值为1。

设:inta=1,b=2;则表达式(++a==b--)?--a:++b的值为1。选项:1、错2、对假设有说明语句:inta=3,b;则执行b=(float)a/2+0.5... 设:int a=1,b=2;则表达式(++a==b--)?--a:++b的值为1。
选项:
1、 错
2、 对

假设有说明语句:int a=3,b; 则执行b=(float)a/2+0.5赋值语句后,变量a的类型已经改变为float型。
选项:
1、 错
2、 对
展开
 我来答
hallowwar
2009-12-15 · TA获得超过553个赞
知道小有建树答主
回答量:630
采纳率:0%
帮助的人:406万
展开全部
1. ++X较之于X--先进行自运算,所以1对。
2. 明显错误。我调试了一下,因为这东西也不是特别注意。
b=(float)a/2+0.5;
printf("%d ,%d \n",a,b);
只有这种格式可以输出,当你有一个为%f试图以浮点输出时,甚至导致内存报错,看来这是个严重的问题,我想是这样的,a,b的地址空间是相邻的,当以浮点输出时读取四个字节,导致了越界了。结果可想而知,你的问题也就不言自明了。

调试是最好的解决办法,要学会研究。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我又出来了
2009-12-15 · TA获得超过2652个赞
知道小有建树答主
回答量:867
采纳率:0%
帮助的人:1077万
展开全部
1错 应是0
2错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
successjerry
2009-12-15 · TA获得超过919个赞
知道小有建树答主
回答量:576
采纳率:0%
帮助的人:443万
展开全部
第一题 对,第二题 错;
分析如下
第一题
++a先执行加后使用a值 a++先使用a的值再执行加;减类似分析
(++a==b--)?--a:++b执行顺序为从左到右
先执行++a 所以此时a=2,再与b比较,比较后,b自减,为1;
所以a=b=2为真返回 条件语句的前面部分,由于是--a,所以返回为1(若为a--则返回为2),所以是对的
第二题:
执行b=(float)a/2+0.5赋值语句后,a 的值不会发生任何改变,执行那个语句时,会对a进行复制的,原来的那个值不会改变
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
曾哥IS史泰龙
2009-12-15 · TA获得超过143个赞
知道答主
回答量:106
采纳率:0%
帮助的人:76.1万
展开全部
1错 2错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
songyingboy
2009-12-15 · TA获得超过102个赞
知道答主
回答量:19
采纳率:0%
帮助的人:13.4万
展开全部
第一题对.第二题错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式