标题:百度面试题
只看楼主
caolei
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-11-12
得分:0 
我都糊涂了!!
在vc中
int x,a; x=4; a=x-x--; printf("a=%d",a);// a=0,x=3
//小小贝的 x+=x-=x-x--; ==>x+=x-=4-4-- 出问题了吧 3

int x,a; x=4; x=x-x--; printf("x=%d",x);// x=-1
在tc中
原题结果就是8

2006-11-12 18:51
小小贝
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-9-21
得分:0 

对哦.....但不明白VC是怎么得到7的?????

2006-11-12 21:52
小小贝
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-9-21
得分:0 
这种题目真是BT啊?有谁知道VC下为什么会是7的.........
2006-11-12 22:23
爱吃猫的鱼
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2006-11-11
得分:0 
按C语言符合赋值运算的规则,我算的结果是8(口算的没机器运行证实)
x-x-- 的结果是 -1 吧

2006-11-12 22:48
小小贝
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-9-21
得分:0 

我算了一下...貌似VC里面7就是我上面那种算法算过来的...
x+=x-=x-x--;
==>x+=x-=4-4--
==>x+=x-=0
==>x+=x=4-0
==>x+=4
==>x=4+4
==>x=8
最后x--
==>x=7;
TB中是:
x+=x-=x-x--;
==>x+=x-=3-4--
==>x+=x-=-1
==>x+=x=3-(-1)
==>x+=4
==>x=4+4
==>x=8
感觉VC是先算运算,再求++/--
而TB是先算++/--,再求运算的
不知道对不对.有哪位大侠知道啊????

2006-11-12 23:04
DeViLMarryYu
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2006-11-12
得分:0 

这道题我想问问得8的怎么算出来的?
如果x+=x-=-1;
x-=-1 -> x=4-(-1) -> x=5
x+=5 -> x=4+5=9
怎么得出来的8 ???
我用VC编译出来是7,我已经迷糊了!


我是风筝,高高的飞!我是风筝,我无所谓! 人生注定短暂凄美,风停之后就要坠毁!
2006-11-12 23:16
小小贝
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2006-9-21
得分:0 
貌似编译器不同算法不同,VC里面结果是7,但TC里面结果是8.....我不知道我前面说的对不对....有达人没有????
2006-11-12 23:46
bestboy555
Rank: 1
等 级:新手上路
帖 子:53
专家分:0
注 册:2006-8-1
得分:0 
这种题目就没有必要争论了吧,一点实用价值都没有

原来这个世界还有好多真理!
2006-11-13 12:34
蓝色神话
Rank: 2
等 级:论坛游民
威 望:1
帖 子:404
专家分:24
注 册:2006-5-11
得分:0 
百度也拿这种无聊的题出来考?看来中国的企业真是悲啊!
2006-11-13 16:16
xiaoxiao926
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2006-11-13
得分:0 

晕了到底得多少呀

2006-11-13 16:49



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-102238-1-1.html




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

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