Aubrey哇 发表于 2021-4-27 11:11:44

用海伦公式求三角形面积(VS2019)

请问各位大佬在VS2019里我这个程序哪里有问题呢,没错误但是运行时总是不能得出结果
#include <stdio.h>
#include <math.h>
void main()
{
        float a, b,c,s,area;
        printf("please input a,b,c\n");
        scanf_s("%f,%f,%f", &a, 1, &b, 1, &c, 1);
        s = 1.0 / 2 * (a + b + c);
        area = sqrt(s * (s - a) * (s - b) * (s - c));
        printf("a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n", a, b, c, s);
        printf("area=%7.2f\n", area);
}

昨非 发表于 2021-4-27 12:18:25

#include <stdio.h>
#include <math.h>
void main()
{
        float a, b, c, s, area;
        printf("please input a,b,c\n");
        scanf_s("%f,%f,%f", &a, &b, &c);//这里的“1”是干嘛的请问?
        s = 1.0 / 2 * (a + b + c);
        area = sqrt(s * (s - a) * (s - b) * (s - c));
        printf("a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n", a, b, c, s);
        printf("area=%7.2f\n", area);
}
测试
please input a,b,c
10.0,14.5,7.8
a=10.00,b=14.50,c=   7.80,s=16.15
area=36.99

violet233_1 发表于 2021-4-27 22:36:52

运行程序时应该是输入的时候中英文逗号的问题,你试试把scanf那行的%f后面的逗号换成空格。

Aubrey哇 发表于 2021-4-29 15:37:43

violet233_1 发表于 2021-4-27 22:36
运行程序时应该是输入的时候中英文逗号的问题,你试试把scanf那行的%f后面的逗号换成空格。

好的 谢谢你啦

育人三代 发表于 2021-4-29 16:37:29

violet233_1 发表于 2021-4-27 22:36
运行程序时应该是输入的时候中英文逗号的问题,你试试把scanf那行的%f后面的逗号换成空格。

跟这个无关,用逗号分隔,那输入的时候原样输入就行,就是scanf函数里面导入地址时出的问题,把1删了
页: [1]
查看完整版本: 用海伦公式求三角形面积(VS2019)