| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1029 人关注过本帖
标题:一个关于sqrt()函数问题
只看楼主 加入收藏
明次
Rank: 5Rank: 5
来 自:China
等 级:职业侠客
帖 子:166
专家分:303
注 册:2009-1-11
结帖率:100%
收藏
已结贴  问题点数:5 回复次数:8 
一个关于sqrt()函数问题
程序代码:
#include <stdio.h>
#include <cmath>
int main()
{
    printf("%d\n",sqrt(25));
}
输出结果居然是0,我就郁闷了 跟好25不是5吗?那为什么会输出0?


搜索更多相关主题的帖子: 函数 sqrt 
2009-09-24 20:49
xdyuan33
Rank: 3Rank: 3
来 自:广西大学化工学院
等 级:论坛游侠
帖 子:146
专家分:145
注 册:2009-7-24
收藏
得分:2 
sqrt()好像是对实型数的

参与切磋是美德,每天回帖即可获得10分可用分!
2009-09-24 20:57
xdyuan33
Rank: 3Rank: 3
来 自:广西大学化工学院
等 级:论坛游侠
帖 子:146
专家分:145
注 册:2009-7-24
收藏
得分:0 
#include <stdio.h>
#include <cmath>
int main()
{
    printf("%f\n",sqrt(25));
}
这个就没问题。到底是不是这样,让高手回答罗

参与切磋是美德,每天回帖即可获得10分可用分!
2009-09-24 20:58
xdyuan33
Rank: 3Rank: 3
来 自:广西大学化工学院
等 级:论坛游侠
帖 子:146
专家分:145
注 册:2009-7-24
收藏
得分:0 
#include <stdio.h>  
#include <math.h>  
int main()  
{  
    printf("%f\n",sqrt(25));  
}


参与切磋是美德,每天回帖即可获得10分可用分!
2009-09-24 20:59
BlueGuy
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:29
帖 子:4476
专家分:4055
注 册:2009-4-18
收藏
得分:2 
sqrt()返回的是  double,  占8个字节,
printf (%d)的参数是 4个字节,就是只读了 sqrt返回值的低4个字节


随便说说, 不保证 正确性

我就是真命天子,顺我者生,逆我者死!
2009-09-24 21:04
LBY318902435
Rank: 2
来 自:江苏南京
等 级:论坛游民
帖 子:76
专家分:48
注 册:2009-3-31
收藏
得分:1 
把 printf改为printf("%f\n",sqrt(25));

走自己的路……
2009-09-24 21:07
LBY318902435
Rank: 2
来 自:江苏南京
等 级:论坛游民
帖 子:76
专家分:48
注 册:2009-3-31
收藏
得分:0 
5楼应该是对的

走自己的路……
2009-09-24 21:09
xdyuan33
Rank: 3Rank: 3
来 自:广西大学化工学院
等 级:论坛游侠
帖 子:146
专家分:145
注 册:2009-7-24
收藏
得分:0 
查了下手册:
函数名: sqrt  
  能: 计算平方根  
  法: double sqrt(double x);  

参与切磋是美德,每天回帖即可获得10分可用分!
2009-09-24 21:10
LEED
Rank: 2
等 级:论坛游民
帖 子:75
专家分:43
注 册:2009-8-26
收藏
得分:0 
我也试了一下。。这是为什么呢?SQRT对int也有效啊。。那怎么还输出零啊。。
期待高手的解答。
2009-09-24 21:16
快速回复:一个关于sqrt()函数问题
数据加载中...
 
   



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

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