呵呵
#include<iostream>
#include<cmath>
using namespace std;
float sanjiaoxing(float a,float b,float c);
void main()
{cout<<"请输入一个三角形的各边长x,y,z"<<endl;
float x,y,z;
cin>>x>>y>>z;
cout<<"三角形"<<x<<" "<<y<<" "<<z<<" "<<"的面积是:"<<sanjiaoxing(x,y,z)<<endl;
}
float sanjiaoxing(float a,float b,float c)
{ float area;
float s;
if(a+b<=c||a+c<=b||b+c<=a)
{cout<<"您输入的三个数不能组成三角形"<<endl;
return 0;
}
else
{
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
return area;
}
}你在运行一下就没问题了。你的源代码有小点错误。你要的是面积值,但是你调用函数后却没返回值。如果不要返回值的话,return语句可有也可无。
另外你的参数传递也不怎么好,一种是float型,一种确是int型。这样还要系统为你进行类型转换。还有你输出时有个area在main函数中是未定义的。
因此错误很多,建议多看些书上的概念。有问题可以交流。QQ657919224.