| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3540 人关注过本帖
标题:error C2065: 'sqrt' : undeclared identifier C 语言 问题
只看楼主 加入收藏
红叶知秋
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-9-19
结帖率:0
收藏
已结贴  问题点数:20 回复次数:9 
error C2065: 'sqrt' : undeclared identifier C 语言 问题
#include "math.h"

main ()
{

long  int  i , x , y , z;
for   ( i = 1 ; i < 100000; i ++)

{

       x = sqrt ( i + 100);

       y = sqrt ( i +  268);

           if( x * x == i + 100&&y == i + 268)

           printf ( "\n%ld\n",i);
}

}
这是 代码  我在 WIN TC  里 编译显示是没错误的
 可在 VC++6.0  则 显示错误
另外本人 刚学 C 语言  希望  能得到前辈的 指点
谢谢
搜索更多相关主题的帖子: include 
2011-09-19 11:22
ssdxpang
Rank: 1
等 级:新手上路
帖 子:5
专家分:3
注 册:2011-9-14
收藏
得分:3 
开头加个 #include<stdio.h>
因为有 printf 函数
2011-09-19 11:32
红叶知秋
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-9-19
收藏
得分:0 
回复 2楼 ssdxpang
谢谢了 可是  问一下  编译成功了  可是 一回车 他自己就没了 呢
2011-09-19 11:42
fotomaker
Rank: 2
等 级:论坛游民
帖 子:33
专家分:60
注 册:2009-2-20
收藏
得分:3 
变量i没有赋值,没有输出结果
2011-09-19 12:43
woai_kmust
Rank: 2
等 级:论坛游民
帖 子:29
专家分:41
注 册:2011-8-31
收藏
得分:3 
回复 3楼 红叶知秋
你的x,y定义为int类型。我没看那个循环下去i等于几,但是如果x=sqrt(5);这个x应该为2;不是2.几 .所以if里面是假。再有如果定义了float型,也要避免用"=="作比较,这个原因我也不知道,反正就是不要用。
2011-09-19 12:59
A13433758072
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广东潮州
等 级:小飞侠
威 望:1
帖 子:1182
专家分:2784
注 册:2010-7-22
收藏
得分:3 
回复 楼主 红叶知秋
去看看(sqrt)函数原型就懂了

一步一个脚印...............................默默地前进.....
诚邀乐于解答c菜鸟问题,的热心网友加入,  QQ群38490319
2011-09-19 16:27
hwf214685147
Rank: 2
等 级:论坛游民
帖 子:70
专家分:94
注 册:2011-9-14
收藏
得分:3 
你这个程序if里面有问题,答案肯定跟你想要的不一样,看你的意思应该这么写if(( x * x == i + 100)&&(y == i + 268))
2011-09-19 16:58
hwf214685147
Rank: 2
等 级:论坛游民
帖 子:70
专家分:94
注 册:2011-9-14
收藏
得分:0 
你这个程序有大问题:你到底想证明什么?
这是我写的,不知是不是你想要的:
#include "math.h"
#include <stdio.h>
main ()
{
    int i;
    double x,y;
    for   ( i = 1 ; i < 10000; i ++)
    {
           x = sqrt ( i + 100);
           y = sqrt ( i +  268);
           if(( x * x == i + 100)&&(y*y == i + 268))
           printf ( "\n%ld\n",i);
    }

}
2011-09-19 17:05
hk327143206
Rank: 2
等 级:论坛游民
帖 子:35
专家分:31
注 册:2011-6-25
收藏
得分:3 
#include <stdio.h>
#include "math.h"

main ()
{
    int  i ;
    double  x , y ;
    for   ( i = 1 ; ; i ++)
    {
      (int) x = sqrt ( i + 100);
      (int) y = sqrt ( i +  268);
       if(( x * x == i + 100)&&(y == i + 268))
       printf ( "\n%ld\n",i);
    }
好像得不出来i的值吧!

}
2011-09-19 20:39
qdhuanglei
Rank: 2
等 级:论坛游民
威 望:1
帖 子:7
专家分:14
注 册:2016-8-22
收藏
得分:0 
头上加个#include <stdio.h>
if语句中y==i+268改为y*y==i+268
2016-08-22 14:02
快速回复:error C2065: 'sqrt' : undeclared identifier C 语言 问题
数据加载中...
 
   



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

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