展开全部
出现sqrt函数的错误,是因为sqrt函数的参数要求是double,float或者long double型,
而你给的是一个int型的参数,所以导致参数类型不匹配,
把变量area和s定义为double型,这样sqrt函数的参数是double型的,就不会出错了.
完整的求三角形面积的C语言程序如下(改动的地方见注释)
注意输入的三边的整数值之间用逗号分隔
#include<stdio.h>
#include<math.h>
int main()
{
int a,b,c;
double area,s;//这里把area和s定义为double型
printf("请输入a,b,c的值");
scanf("%d,%d,%d",&a,&b,&c);
s=(a+b+c)/2.0;//这里把2改为2.0(double型)
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("三角形的面积为%lf\n",area);//这里输出格式符"%d"改成"%lf"
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询