搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 一道简单的题目,求解释
标题:
一道简单的题目,求解释
只看楼主
欧冯
等 级:
新手上路
帖 子:5
专家分:0
注 册:2019-6-12
结帖率:
50%
楼主
已结贴
√
问题点数:20 回复次数:6
一道简单的题目,求解释
int a=3,b=4;
float c;
c=a/b;
则c的值是多少,为啥
搜索更多相关主题的帖子:
int
float
多少
2019-06-12 16:06
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
2
楼
得分:5
a/b 也就是 3/4,幼儿园小朋友都知道是 0 (一个玩偶要4元钱的话,那么3元钱可以买几个玩偶。小朋友踊跃举手:“一个都买不到,零个”)
float c = a/b; 也就是将 整数0 赋值给 单精度浮点数,结果是 0.0f
2019-06-12 16:58
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
3
楼
得分: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
欧冯
等 级:
新手上路
帖 子:5
专家分:0
注 册:2019-6-12
第
4
楼
得分:0
回复 3楼 rjsp
最后那句就是强制类型转换吧
2019-06-13 15:29
欧冯
等 级:
新手上路
帖 子:5
专家分:0
注 册:2019-6-12
第
5
楼
得分:0
回复 3楼 rjsp
3.0/4.0为啥不是0.75
[此贴子已经被作者于2019-6-13 15:38编辑过]
2019-06-13 15:35
rjsp
等 级:
版主
威 望:
507
帖 子:8890
专家分:53117
注 册:2011-1-18
第
6
楼
得分: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
欧冯
等 级:
新手上路
帖 子:5
专家分:0
注 册:2019-6-12
第
7
楼
得分:0
回复 6楼 rjsp
谢谢
2019-06-15 10:12
7
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-495229-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.117270 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved