高手,你刚说的 int 3/10 = 3,这个我怎么输出的是0啊,double也是0

double a = 10/3.0;和float a = 10/3.0是一样的么? 怎么都是取的15位呢

第1个回答  2011-08-26
大哥你的是3/10都是整数肯定是“0”啊,而你说的高手写的是int 10/3吧,因为它是int开头的而且10和3都是整数,所以就得整数3了,你补充的问题的double和float没啥大的区别(你现在不必了解,你用不上)你记住都是浮点数就行了。
第2个回答  2011-08-19
你这句话语法有问题呀,int后面跟的是变量名,变量名的首部必须是英文字母或下划线。
第3个回答  2011-08-19
童鞋
3/10 结果是0,因为3和10都是整型的,结果肯定也是整型的,小数部分被舍弃
10/3 值才是3,同理,小数部分舍弃
第4个回答  2011-08-19
int i=3/10; i=0

double i=3/10; i =0

int i=10/3;i=3

double i=10/3.0; i=3..333

整形的除法3/10。实际是取整。=0;
即使定义了double .但是由于参与运算的是int .所以返回值依然是int ,然后再自动转double .返回值依然是0来自:求助得到的回答
第4个回答  2011-08-19
int 10/3=3
(double ) 10.0/3=3.333
(double) 3.0/10=0.333本回答被提问者采纳
相似回答