| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 359 人关注过本帖
标题:C程序运行问题请教
只看楼主 加入收藏
电脑学徒
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-11-8
收藏
 问题点数:0 回复次数:4 
C程序运行问题请教
main()
{
double d=3.2;
int x,y;
x=1.2;
y=(x+3.8)/5.0;
printf("%d\n",d*y);
}
程序运行输出结果是0,想请问大家的是(1.2+3.8)/5.0不是等于1吗?
谢谢
搜索更多相关主题的帖子: 运行 
2007-11-13 11:18
neverTheSame
Rank: 3Rank: 3
来 自:江西农业大学
等 级:新手上路
威 望:9
帖 子:1511
专家分:0
注 册:2006-11-24
收藏
得分:0 
x=1.2; ===>x=1(因为x为整型数,相当于x=(int)1.2;)
(x+3.8)/5.0===>4.8/5.0====>0.96
y=0.96===>y=(int)0.96;===>y==0;

wap酷禾网(http://wap.),提供免费的、优质的、快捷的wap资源下载服务。
2007-11-13 11:23
eakcon
Rank: 1
等 级:新手上路
帖 子:754
专家分:0
注 册:2007-11-7
收藏
得分:0 

你輸出是整型,而賦值是double型,肯定只輸出首位啊,正如樓上所說的

2007-11-13 11:28
电脑学徒
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-11-8
收藏
得分:0 
学习了,谢谢了,以后我做题会先好好看看题的

爬呀爬滾呀滾小蝦總有一天變大蝦!愿能与你一起学习一起进步QQ344258813
2007-11-13 11:31
qiang5219
Rank: 1
等 级:新手上路
帖 子:83
专家分:0
注 册:2007-9-10
收藏
得分:0 
因为你定义了x,y 是int ,d 是double ,
main()
{
double d=3.2;
int x,y;
x=1.2;
y=(x+3.8)/5.0; /* 中的x+3.8 的表达式只进行整数部分想加,x+3.8 =1+3 ,所以是y=0 */
printf("%d\n",d*y); /* 那d*y 自然就是0 拉 */
}
2007-11-13 11:31
快速回复:C程序运行问题请教
数据加载中...
 
   



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

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