有图有实情,求解释。输出与想象中不同的地方~

有图有真相,求解释。输出与想象中不同的地方~~


代码如下:
#include <stdio.h>
#include <math.h>
int main ()
{
float a,b,c,s,area;
printf("please input 3 sides of one triangle:\n");
scanf("%f,%f,%f",&a,&b,&c);
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("a=%7.2f,b=%7.2f,c=%7.2f\n",a,b,c);
printf("area of triangle is %10.5f",area);
}


不应该是是上面的结果啊。。。根本就是乱码嘛~~~

------解决方案--------------------
C/C++ code
#include <stdio.h>
#include <math.h>
int main ()                
{
    float a,b,c,s,area;
    printf("please input 3 sides of one triangle:\n");
    scanf("%f%f%f",&a,&b,&c);            //注意不要有逗号,还有就是3个数是否能组成三角形都没有判断
    
    s=(a+b+c)/2;

    area=sqrt(s*(s-a)*(s-b)*(s-c));
    printf("a=%7.2f,b=%7.2f,c=%7.2f\n",a,b,c);

    printf("area of triangle is %10.5f",area);
    return 0;            //int main()  要有这句
}

------解决方案--------------------
探讨

问题是解决了,但是why~~~引用:

除了一楼的方法,还可以输入"6,6,8"