搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 新手求解,汗,运行结果为啥是这样
标题:
新手求解,汗,运行结果为啥是这样
只看楼主
狼爷
等 级:
新手上路
帖 子:5
专家分:0
注 册:2011-3-20
结帖率:
0
楼主
已结贴
√
问题点数:20 回复次数:5
新手求解,汗,运行结果为啥是这样
main()
{
double d=3.2;intx,y;
x=1.2;y=(x+3.8)/5.0;
printf("%d \n",d*y);
}
输出来的是多少,为什么
搜索更多相关主题的帖子:
double
2011-03-20 22:48
minand
等 级:
论坛游民
帖 子:71
专家分:89
注 册:2011-3-16
第
2
楼
得分:5
int是整数的 你x是1.2 属于浮点数 自己懂转换成整数
2011-03-20 22:52
pcbaichi
等 级:
蜘蛛侠
帖 子:486
专家分:1185
注 册:2010-11-13
第
3
楼
得分:5
int x,y;是什么意思,lz思考一下
同理double d=3.2;
lz再去看一下自动类型转换问题,基本能解决问题
免费赠送河蟹一只
2011-03-20 22:53
ansic
来 自:恍惚窈冥
等 级:
城市猎人
帖 子:1543
专家分:5367
注 册:2011-2-15
第
4
楼
得分:5
编译这关就过不去。我觉得比较合理的应该是这样。
#include <stdio.h>
int main(void)
{
double d=3.2,x=1.2,y;
y=(x+3.8)/5.0;
printf("%lf\n",d*y);
}
善人者,不善人之师;不善人者,善人之资。不贵其师,不爱其资,虽智大迷。
2011-03-20 23:01
canxden
来 自:江西奉新
等 级:
论坛游侠
帖 子:114
专家分:105
注 册:2011-3-18
第
5
楼
得分:5
有的编译器会对这段代码显示warning y为整数型…会造成数据丢失……vc 6.0就会这样……所以选用double为三个产量附值更好
一个人能有多坚强,太安静,就成了孤单。
2011-03-20 23:09
minand
等 级:
论坛游民
帖 子:71
专家分:89
注 册:2011-3-16
第
6
楼
得分:0
基础搞扎实点,尽量避免小问题的出现
2011-03-20 23:13
6
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-334267-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.288731 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved