当前位置: 代码迷 >> C语言 >> [求助]本人乃新手。。可不可以解释一下这一韪
  详细解决方案

[求助]本人乃新手。。可不可以解释一下这一韪

热度:111   发布时间:2007-04-14 20:56:01.0

printf("%f",a);输出的是a的值.
不是C的值.结果当然是6.0000000了


----------------解决方案--------------------------------------------------------
我想问一下,为什么浮点型的数(1.000000)用整型输出就是0呢?为什么不是1呢?
----------------解决方案--------------------------------------------------------
首先执行的是a++,但a/a++是同一行结果出来的肯定是1,a++要等到下行才执行+1
----------------解决方案--------------------------------------------------------

我想和13楼的那个人一样问一下/。
为什么结果是0
郁闷。


----------------解决方案--------------------------------------------------------
以下是引用v1v1wang在2007-4-13 18:48:58的发言:

#include"stdio.h"
void main()
{int a=5,c;
c=(a/=a++);
printf("%d",c);
}

为什么结果是1??
当我把int换成float结果又怎么变成0了??

a/=a++    a最先赋的值是5  a++ 先使用a后加1   a/=a++ 意思就是a=a/a++ 相当于a= 6/5     得1

这样说对吗?


----------------解决方案--------------------------------------------------------
以下是引用pinglideyu在2007-4-13 19:47:32的发言:
你只要知道“=”的优先级要比“++”的优先级要高!
书上有的。

你厉害啊!!你们学校老师交你的?
----------------解决方案--------------------------------------------------------