已知三角形的面积是area=s(s-a)(s-b)(s-c),其中s=(a+b+c)/2,a、b、c为三角形的三条边。定义两个带参数的宏,一个用来求s,一个用来求area,试编写一个程序,用带参数的宏来计算三角形的面积。
#define area(a,b,c) ((a+b+c)/2((a+b+c)/2-a)((a+b+c)/2-b)((a+b+c)/2-c))
#include <iostream>
#include <cmath>
using namespace std;
#define S(a,b,c) (a+b+c)/2
#define AREA(a,b,c) sqrt(S(a,b,c)*(S(a,b,c)-a)*(S(a,b,c)-b)*(S(a,b,c)-c))
int main()
{
float a, b, c;
cout << "input a,b,c:";
cin >> a >> b >> c;
if (a + b > c && a + c > b && b + c > a)
cout << "area=" << AREA(a, b, c) << endl;
else
cout << "It is not a triangle!" << endl;
return 0;
}
有帮助采纳一下哦!