| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 433 人关注过本帖
标题:解释下这两道题
只看楼主 加入收藏
岳C
Rank: 1
等 级:禁止发言
帖 子:354
专家分:0
注 册:2007-7-16
收藏
 问题点数:0 回复次数:4 
解释下这两道题
提示: 作者被禁止或删除 内容自动屏蔽
搜索更多相关主题的帖子: 解释 
2007-10-15 12:48
zhaoyg
Rank: 1
等 级:新手上路
帖 子:328
专家分:0
注 册:2006-8-28
收藏
得分:0 
1:因为x>y不成立所以只执行x=y;y=z;若是将z=x;x=y;y=z;都放入花括号中那么就是另一种情景了
2:题是不是抄错了,b=x++应该是a=x++吧

麻雀飞上枝头变凤凰,而菜鸟的我飞上枝头却感冒了,为什么我的脑袋如此的不管用呢。
2007-10-15 12:56
鸿工作室
Rank: 1
等 级:新手上路
帖 子:89
专家分:0
注 册:2007-10-14
收藏
得分:0 
1.已知intx=10,y=20,z=30;以下的语句执行后x,y,z的值是
if(x>y)
z=x;x=y;y=z;

if(x>y)
z=x;没执行到,只执行:x=y;y=z;


2.
int x=10,y=9;
int a,b,c;
b=(--x==y++)? --x:++y;//红色处应该是a吧,条件成立,执行了两次--x,所以a=x=8,y=10
b=x++;//b=x=8
c=y;//c=y=10






2007-10-15 12:57
死了都要C
Rank: 4
来 自:四川成都
等 级:贵宾
威 望:13
帖 子:1582
专家分:116
注 册:2006-12-7
收藏
得分:0 
1:可以这样看``:

if(x>y)
z=x;

x=y;y=z;

如果x>y``那么执行z=x;``然后直接执行``x=y;y=z;```LZ现在明白吗```



2:`--和++如果放在变量前面``就先让这个变量增加1`在使用这个变量``

如果是在后面``就先使用这个变量``再让这个变量增加1`


现在看程序:

b = ( --x == y++ ) ? --x :++y ; 先让X减少1再和Y比较``比较后Y增加1`

如果条件成立(为真)``那么就让X减少1``再取X的值``

如果是假``就让Y的值增加1``再取Y的值``

b=x++; 将X的值赋给B``



c=y; 将Y的值辅给C```

至于为什么A是8``因为A没有被赋初值```所以是个随机的``也可能像2楼说的``抄错了``

抄错的地方应该是这里:

b=(--x==y++)? --x:++y;
b=x++;

两个B``其中一个一定是A``

现在明白吗``




[此贴子已经被作者于2007-10-15 13:12:00编辑过]


女施主``我给你``送茶来了```师太``你就从了老衲吧``
代码本天成~~~妙头偶得之```
2007-10-15 13:09
岳C
Rank: 1
等 级:禁止发言
帖 子:354
专家分:0
注 册:2007-7-16
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

坚持到底
2007-10-15 14:42
快速回复:解释下这两道题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022326 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved