C语言中printf不能输出的问题

/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:三角形的面积为:area=sqrt(s*(s-a)*(s-b)*(s-c)).其中
,s=(a+b+c)/2,a、b、c为三角形三条边的长。定义两个带
参数的宏,一个用来求s,另一个用来求area。编写程序,
在程序中用带参数的宏求面积area。
-------------------------------------------------------*/
#include <stdio.h>
#include "math.h"
/***********SPACE***********/
#define S(x,y,z)(x+y+z)/2//宏定义
#define AREA(s,x,y,z)sqrt(s*(s-x)*(s-y)*(s-z))
main()
{
double area;
float a,b,c,s;
printf("a,b,c=");
/***********SPACE***********/
scanf("%f,%f,%f",&a,&b,&c); //格式化输入
if(a+b>c&&b+c>a&&c+a>b)
{
/***********SPACE***********/
s=S(a,b,c); //计算三角形周长的一半
/***********SPACE***********/
area=AREA(s,a,b,c); //计算三角形面积
printf("area=%lf\n",area);
}
}
这个代码应该没错吧 但是最后就是不能输出area的值,求大神指导。

能出啊。  估计程序运行时输入数字时候中间没有用逗号隔开 。 例如输入2,3,4 后回车。

温馨提示:答案为网友推荐,仅供参考