大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
首先 你没有包含math.h头文件 ,所以显示 sqrt未定义,第二,collect2的意思是,控制台还有该程序的残留进程。
创新互联公司于2013年成立,先为额敏等服务建站,额敏等地企业,进行企业商务咨询服务。为额敏企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
double sqrtl(long double x); 看清楚了,每个sqrt是不一样的。楼主的0不知道是什么类型 ,比如说是float,但是调用sqrt(0),所以可能是因为float-double隐式转换调用double sqrt(double x)导致你的结果出错。
printf(erro\n);else { p= (a+b+c)/2;area=sqrt(p*(p-a)*(p-b)*(p-c));printf(area is %f\n,area);} } 你的公式也错了,而且if里面六个条件有一个不满足的话就为假,因此用&&。
看了楼上的各种代码,好像都没有考虑到特殊的情况。附上自己的代码,除了改正楼主的一些错误之外,还另外补充了关于a,b,c是否为零的讨论。温馨提示楼主:printf后括号中要输出的量前面是不加地址运输符&的。
首先你的代码都没有对变量初始化。而且&&运算输出的是逻辑值。真为1假为0 。而sqrt 是没有对int类型进行重载的。你可以用强制类型转换a=sqrt(float((ba)&&(c++*d--)));在vc0里面的某些版本是可以通过运行的。
首先 你没有包含math.h头文件 ,所以显示 sqrt未定义,第二,collect2的意思是,控制台还有该程序的残留进程。
VS C语言中 取根函数有 double sqrt(double ) ; float sqrtf(float); long double sqrtl(long double x); 看清楚了,每个sqrt是不一样的。
我觉得关键是那个e错了,因为在数学里面e是有意义的 ,在C语言里,e也是有作用的。如同学生里的一样。
C语言中sqrt函数是指的开方运算函数,得到的结果是函数变量(可以是数值,也可以是变量名)的算术平方根。如输入m=sqrt(4);,则输出结果为2。
C语言中sqrt()意思是平方根函数,计算一个非负实数的平方根。 在VC0中的math.h头文件的函数原型为double sqrt(double number)。sqrt()函数的输入参数不允许为负数,若输入赋值作为函数入参,将得不到正确的结果。
因为sqrt(9)是double型数据,用%d输出的时候,输出的都是0,应该用 %lf 输出。
C语言中sqrt函数是指的开方运算函数,得到的结果是函数变量(可以是数值,也可以是变量名)的算术平方根。在VC0中的math.h头文件的函数原型为doublesqrt(double)。