| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1539 人关注过本帖
标题:关于sqrt 数据类型的问题!不得不让警告!
取消只看楼主 加入收藏
vvvevvv
Rank: 2
来 自:黑龙江
等 级:论坛游民
帖 子:129
专家分:92
注 册:2010-9-9
结帖率:96%
收藏
已结贴  问题点数:20 回复次数:5 
关于sqrt 数据类型的问题!不得不让警告!
程序代码:
#include<stdio.h>//一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
#include<math.h>
void main()
{
    long i,x,y;//这个是正确答案!!但是我的做的时候 x,y的类型是double(因为 sqrt要求的double类型),结果我做的结果不对!
    for(i=0;i<=100000;i++)
    {
        x=sqrt(i+100);
        y=sqrt(i+268);
        if(x*x==i+100&&y*y==i+268)
            printf("%ld\n",i);
    }
}
哪位朋友能帮助我解释一下!
这道题用sqrt来解决 而 变量只有是long的时候才能做出这道题,但是vc6.0却出现了警告!希望朋友朋友能解释解释!谢谢

[ 本帖最后由 vvvevvv 于 2010-12-8 18:46 编辑 ]
搜索更多相关主题的帖子: 警告 数据 类型 sqrt 
2010-12-08 15:45
vvvevvv
Rank: 2
来 自:黑龙江
等 级:论坛游民
帖 子:129
专家分:92
注 册:2010-9-9
收藏
得分:0 
回复 2楼 zzgzzg00
首先谢谢~

我的问的是  sqrt 要求的数据类型应该是double吧
也就是说 x应该是double型  而且在运行之前的组建  vc也提示



最后的意思是    是不是  利用sqrt的时候  long型也可以??

学习~
2010-12-08 16:00
vvvevvv
Rank: 2
来 自:黑龙江
等 级:论坛游民
帖 子:129
专家分:92
注 册:2010-9-9
收藏
得分:0 
朋友帮帮忙!谢谢

学习~
2010-12-08 18:47
vvvevvv
Rank: 2
来 自:黑龙江
等 级:论坛游民
帖 子:129
专家分:92
注 册:2010-9-9
收藏
得分:0 
帮忙解决了!就不用自己顶了!!

学习~
2010-12-08 19:27
vvvevvv
Rank: 2
来 自:黑龙江
等 级:论坛游民
帖 子:129
专家分:92
注 册:2010-9-9
收藏
得分:0 
回复 9楼 御坂美琴
也就是说 sqrt只能返回 double了吧! 只能强制转换才可!!明白了! 谢谢!!!

学习~
2010-12-08 19:37
vvvevvv
Rank: 2
来 自:黑龙江
等 级:论坛游民
帖 子:129
专家分:92
注 册:2010-9-9
收藏
得分:0 
回复 13楼 遮天云
这个题目 必须是long才能运行中正确结果!double不能运行出正确结果!
至于那个%lf和%f 输出的时候,如果是double的话,即使是%f,在系统会默认按双精度输出!!
%f和%lf在输入的时候 有区别!!

学习~
2010-12-08 21:00
快速回复:关于sqrt 数据类型的问题!不得不让警告!
数据加载中...
 
   



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

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