| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 410 人关注过本帖
标题:问一个关于整形运算与输出的题。
只看楼主 加入收藏
xjc464504986
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-4-18
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
问一个关于整形运算与输出的题。
main()
{
int x=1,y=5,z;float f;
f=x/y;z=f*10;printf("%d",z);
f=1.0*x/y;z=f*10;printf("%d",z);
f=x/y*1.0;z=f*10;printf("%d",z);
}
答案是 0 2 0
为什么啊?
搜索更多相关主题的帖子: 整形 
2012-04-22 19:19
xjc464504986
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-4-18
收藏
得分:0 
为什么是这样啊 求教跪求!!
2012-04-22 19:57
蓝xy天
Rank: 2
来 自:四川 成都
等 级:论坛游民
帖 子:8
专家分:10
注 册:2012-4-2
收藏
得分:10 
第一个z:f=x/y中 当x,y都是整数是将执行整型运算,小数部分将舍去,结果得f等于0,最终z也等于0;
第二个z:f=1.0*x/y中1.0*x将x转换为浮点型,x,y中有一个为浮点型的时候执行浮点预算,得f等于0.2,最后z=2;
第三个z:f=x/y*1.0中(运算顺序为自左向右)x/y也都是整型,结果f=0*1.0=0,最终z=0。
2012-04-22 20:05
xjc464504986
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-4-18
收藏
得分:0 
回复 3楼 蓝xy天
十分感谢 再问下执行整形或浮点运算是程序自动判断吗?
2012-04-22 20:12
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:10 
以下是引用xjc464504986在2012-4-22 20:12:59的发言:

十分感谢 再问下执行整形或浮点运算是程序自动判断吗?

根据变量类型 按照一个自动转换规则 进行的

可以说是编译器判断的罢。。
2012-04-22 20:17
蓝xy天
Rank: 2
来 自:四川 成都
等 级:论坛游民
帖 子:8
专家分:10
注 册:2012-4-2
收藏
得分:0 
嗯! 编译器判断。
就是根据你参加运算的参数,如果都是整型则按整型运算,结果就是整型。如果有一个浮点或者全是浮点,则按浮点运算, 结果就是浮点型。
2012-04-22 20:21
xjc464504986
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-4-18
收藏
得分:0 
知道了谢谢大大们!
2012-04-22 20:21
hgzlpmg
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2012-2-17
收藏
得分:0 
这个题问得好,我是大一新生,也是刚接触C语言
2012-04-22 20:25
快速回复:问一个关于整形运算与输出的题。
数据加载中...
 
   



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

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