| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
买学问 - 大牛一对一辅导,有问必答买学问 - 专业的付费知识问答平台
共有 210 人关注过本帖
标题:一道简单的题目,求解释
只看楼主 加入收藏
欧冯
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2019-6-12
结帖率:100%
  已结贴   问题点数:20  回复次数:6   
一道简单的题目,求解释
int a=3,b=4;
float c;
c=a/b;
则c的值是多少,为啥
2019-06-12 16:06
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:306
帖 子:6381
专家分:37044
注 册:2011-1-18
  得分:5 
a/b 也就是 3/4,幼儿园小朋友都知道是 0 (一个玩偶要4元钱的话,那么3元钱可以买几个玩偶。小朋友踊跃举手:“一个都买不到,零个”)
float c = a/b; 也就是将 整数0 赋值给 单精度浮点数,结果是 0.0f

2019-06-12 16:58
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:306
帖 子:6381
专家分:37044
注 册:2011-1-18
  得分:10 
3/4 是int类型,值为 0
3.0/4.0 是double类型,值为 0.75
3.0f/4.0f 是float类型,值为 0.75f

而 3/4.0 之类,两个操作数类型不一致或低于int,这时要求类型提升,即 3/4.0 转化为 3.0/4.0


[此贴子已经被作者于2019-6-13 15:59编辑过]

2019-06-12 17:01
欧冯
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2019-6-12
  得分:0 
回复 3楼 rjsp
最后那句就是强制类型转换吧
2019-06-13 15:29
欧冯
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2019-6-12
  得分:0 
回复 3楼 rjsp

3.0/4.0为啥不是0.75

[此贴子已经被作者于2019-6-13 15:38编辑过]

附件: 您没有浏览附件的权限,请 登录注册
2019-06-13 15:35
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:306
帖 子:6381
专家分:37044
注 册:2011-1-18
  得分:5 
回复 5楼 欧冯
我看了一下我在3楼的回复,拷贝粘贴后忘了修改,不好意思,是我的错
现改为:

3/4 是int类型,值为 0
3.0/4.0 是double类型,值为 0.75
3.0f/4.0f 是float类型,值为 0.75f

而 3/4.0 之类,两个操作数类型不一致或低于int,这时要求类型提升,即 3/4.0 转化为 3.0/4.0
2019-06-13 15:58
欧冯
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2019-6-12
  得分:0 
回复 6楼 rjsp
谢谢
6 天前 10:12







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

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