鬼魅王子 发表于 2019-9-22 14:38

c语言问题

#include <stdio.h>
#include <math.h>
int main()
{
    float a,b,C,s;
    printf("请输入两边一角:\n");
    scanf("%.2f,%.2f,%.2f",&a,&b,&C);
    s=0.5*a*b*sin(C);
    printf("%.2f",s);
    return 0;
}这串代码结束怎么输入只输出0.00为什么,刚学不懂

idiotsir 发表于 2019-9-22 15:02

本帖最后由 idiotsir 于 2019-9-22 15:03 编辑

scanf里面%.2f,%.2f,%.2f输入错了,之间不能有逗号,而且不能写成%.2f,只能写%f

idiotsir 发表于 2019-9-22 15:18

UserXCH 发表于 2019-9-22 15:06
可以的。输入是逗号作为分隔符。**但是`.2f`确实不可以&#128516;。**

可能习惯了输入里面什么都不加入:Dweeqw

染墨指尖 发表于 2019-9-22 16:40

printf("%.2f",s); %.2f指的是float型小数输出两位,其中第二位是四舍五入后的结果

鬼魅王子 发表于 2019-9-22 16:47

UserXCH 发表于 2019-9-22 15:06
可以的。输入是逗号作为分隔符。**但是`.2f`确实不可以&#128516;。**

为什么.2f不可以

鬼魅王子 发表于 2019-9-22 16:48

染墨指尖 发表于 2019-9-22 16:40
printf("%.2f",s); %.2f指的是float型小数输出两位,其中第二位是四舍五入后的结果

但是不管我怎么输入结果都是0.00,这个是为什么?

鬼魅王子 发表于 2019-9-22 16:52

idiotsir 发表于 2019-9-22 15:02
scanf里面%.2f,%.2f,%.2f输入错了,之间不能有逗号,而且不能写成%.2f,只能写%f

%.2f只能输出用?不能输入用?

孤城。 发表于 2019-9-22 17:36

UserXCH 发表于 2019-9-22 15:06
可以的。输入是逗号作为分隔符。**但是`.2f`确实不可以&#128516;。**

可以的,小数点后固定两位

mayuan5520 发表于 2019-9-23 11:54

本帖最后由 mayuan5520 于 2019-9-23 11:56 编辑

输入好像不能加格式修饰符。加了的话就可能就要按照你的格式输入
页: [1]
查看完整版本: c语言问题