编写一个fun函数功能是根据给定的三角形三条边长abc求三角形的面积
答案:3 悬赏:30
解决时间 2021-01-29 23:45
- 提问者网友:伴风望海
- 2021-01-29 19:38
编写一个fun函数功能是根据给定的三角形三条边长abc求三角形的面积
最佳答案
- 二级知识专家网友:神鬼未生
- 2021-01-29 20:58
把下面的代码,复制试试,自己在调整一下,百度还是有点问题
#include
#include
//float fun(); 声明的位置不对,声明的时候必须要有形参参数(可以只写形参的类型,比如float)
void main()
{
float fun(float a, float b, float c); //因为你自定义的函数fun ,在main函数之后定义所以要提前声明,这个生命必须放在main里面
float a, b, c, s;
printf("Please enter a b c:");
scanf("%f%f%f", &a, &b, &c);
if ((a + b>c) && (a + c>b) && (b + c>a))
{
s = fun(a, b, c);
printf("%f\n", s);
}
}
float fun(float a, float b, float c)
{
float p, s;
//printf("%f\n%f\n%f\n", a, b, c); 这行没必要,因为在main函数中已经输入了,要用到的三边的值
p = (a + b + c) / 2;
s = sqrt(p*(p - a)*(p - b)*(p - c));
return s;
}
#include
#include
//float fun(); 声明的位置不对,声明的时候必须要有形参参数(可以只写形参的类型,比如float)
void main()
{
float fun(float a, float b, float c); //因为你自定义的函数fun ,在main函数之后定义所以要提前声明,这个生命必须放在main里面
float a, b, c, s;
printf("Please enter a b c:");
scanf("%f%f%f", &a, &b, &c);
if ((a + b>c) && (a + c>b) && (b + c>a))
{
s = fun(a, b, c);
printf("%f\n", s);
}
}
float fun(float a, float b, float c)
{
float p, s;
//printf("%f\n%f\n%f\n", a, b, c); 这行没必要,因为在main函数中已经输入了,要用到的三边的值
p = (a + b + c) / 2;
s = sqrt(p*(p - a)*(p - b)*(p - c));
return s;
}
全部回答
- 1楼网友:北方的南先生
- 2021-01-29 22:11
语法上都没问题的 你报错的原因是什么 还是没报错只是运行结果不正确
- 2楼网友:执傲
- 2021-01-29 21:21
前面的说明
float fun();
有问题,应该给出参数的类型,否则默认是整数!
float fun(float,float,float);
float fun();
有问题,应该给出参数的类型,否则默认是整数!
float fun(float,float,float);
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯