你这个程序 开方上是没问题的 而是计算s有问题
成都创新互联公司长期为1000多家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为遂昌企业提供专业的成都网站建设、成都网站设计,遂昌网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。
应该是
#includestdio.h
#includemath.h
void main()
{
float a,b,c,s,m;
scanf("%f%f%f",a,b,c);
s=1.0/2.0*(a+b+c);
m=sqrt(s*(s-a)*(s-b)*(s-c));
printf("%.2f\n",m);
}
C语言中sqrt()意思是平方根函数,计算一个非负实数的平方根。 在VC6.0中的math.h头文件的函数原型为double sqrt(double number)。sqrt()函数的输入参数不允许为负数,若输入赋值作为函数入参,将得不到正确的结果。因此在调用函数之前,应检查函数输入参数。
扩展资料:
sqrt()函数的输入参数必须以double类型输入,函数返回类型为double型,因此必须使用double型的变量来进行接收返回的数值。当输入数据不是double型时,应使用强制类型转换,将其转换为double类型。
在函数接收引用的数值时,应该用 %lf 来表示,否则,将会在输入或输出时出现数据错误,尤其是在数据输入的时候,会直接导致数据出错。这也都主要是由于不同类型的数据存储和读取的方式不同导致的。
首先在 main()函数 上边加个#include "math.h" 因为开根号属于 数学函数里边的函数,要使用根号就要加上#inculde "math.h",\r\n然后在你要开根号的数的前边加个 sqrt,就可以了 \r\n例如\r\n#inculde "math.h"\r\nmain()\r\n{ float a,b;\r\n printf("please input a nuberm:");\r\n scanf("%f",a);\r\n b=sqrt(a);\r\n printf("%f\n",b);\r\n \r\n}这个程序就是 让 用户输入个数字,然后输出原数值的开根号后的结果
在C语言中,可以使用库函数sqrt来实现开根号计算。
头文件:math.h;
声明:double sqrt(double n);
功能:将参数n开平方后,得到算数平方根返回;
调用形式:sqrt(100);为计算100的平方根。