| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 10052 人关注过本帖
标题:a/=a+a是怎么运算的
只看楼主 加入收藏
zzgzzg00
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:2
帖 子:388
专家分:627
注 册:2010-8-2
收藏
得分:0 
那tc2.0运算了下 答案是0 那么就是3楼的正确了

粗心是大敌
2011-02-13 09:36
wujieru
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:1
帖 子:1108
专家分:1939
注 册:2010-10-9
收藏
得分:0 
这个还要想的???
2011-02-13 10:07
找工作中
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:41
专家分:114
注 册:2008-5-21
收藏
得分:0 
如果a本身是0,那么就异常了。
否则的话,当然就是 a / 2a => 1/2,如果int,1/2 => 0。
over

拿到工资先买个山寨手机
2011-02-13 13:03
rickyricky
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2011-2-9
收藏
得分:0 
这个一个复合赋值运算符展开应该为a=a/(a+a)
2011-02-13 13:41
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
呵呵,这个问题要是二楼一下就答对了,可能就没这么热闹了~
2011-02-14 01:16
jj369258
Rank: 4
等 级:业余侠客
帖 子:116
专家分:226
注 册:2010-12-2
收藏
得分:0 
这里要弄清楚/和+优先级
2011-02-22 19:32
汐杨
Rank: 2
等 级:论坛游民
帖 子:27
专家分:13
注 册:2010-7-26
收藏
得分:0 
回复 10楼 CCFzeroOH
什么啊!这压根就不是优先级的事!
2011-02-22 19:38
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
这个表达式貌似是未定义?

[ 本帖最后由 中学者 于 2011-2-22 19:52 编辑 ]

樱花大战,  有爱.
2011-02-22 19:50
cailiang
Rank: 1
等 级:新手上路
帖 子:10
专家分:6
注 册:2011-2-19
收藏
得分:0 
a=a/(a+a)
2011-02-22 20:46
ansic
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:恍惚窈冥
等 级:城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
收藏
得分:0 
+的优先级要大于/=,所以,假如a=2;那么
a/=a+a ==>a/=(a+a) ==>a=a/(a+a) ==>a=2/(2+2)=0 ==>a=2/4 ==> a=0(实际a=0.5,因为做的是整数除法)

菜鸟看法,仅供参考。

root@~ #cat 2.c
#include <stdio.h>

int main (void) {

        float a=2;
        a/=a+a;
        printf ("%.2f\n",a);

        int b=2;
        b/=b+b;
        printf ("%i\n",b);

        return 0;

}

root@~ #gcc 2.c -o 2
root@~ #./2
0.50
0
root@~ #

善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-02-22 21:00
快速回复:a/=a+a是怎么运算的
数据加载中...
 
   



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

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