三角形的面积为
area=根号下:s·(s−a)·(s−b)·(s−c)
其中,s=(a+b+c)/2,a,b,c为三角形的三边。定义两个带参数的宏,一个用来求s,另一个用来求area。编写程序,在程序中用带实参的宏名来求面积area。
#include <iostream>
#include <cmath>
using namespacestd;
#define s(a,b,c) (a+b+c)/2
#define area(s,a,b,c) sqrt(s*(s-a)*(s-b)*(s-c))
int main()
{
cout<<"输入三角形的三边长:"<<endl;
double a,b,c;
cin>>a>>b>>c;
if (!(a+b>c&&a+c>b&&b+c>a)) {
cout<<"Illegal!"<<endl;
return0;
}
double y1 =s(a,b,c);
cout<<"面积: "<<area(y1,a,b,c)<<endl;
return0;
}
输入三角形的三边长:
2 3 4
面积: 2.90474