c语言程序设计浮点数加减乘除问题

这段代码有啥问题呢,打印加减乘除

#include<stdio.h>
int main()
{
        double a,c;
    char b;
    printf("亲输入算式\n");
    scanf("%f%c%f",&a,&b,&c);

    if(b=='+')
    {
        
        printf("%f+%f=%f",a,c,a+c);
        
        
     } 
     if(b=='-')
    {
        
        printf("%f-%f=%f",a,c,a-c);
        
        
     } 
     if(b=='*')
    {
        
        printf("%f*%f=%f",a,c,a*c);
        
        
     } 
     if(b=='/')
    {
        
        printf("%f/%f=%f",a,c,a/c);
        
        
     } 
    
    
    
    return 0;
}

运行结果

img

double类型的输入输出请用 %lf,而不是%f

double类型的格式化输入,你需要使用参数%lf,是小写的L
%f是用于给float传值的
你参数弄错了,那么运行时到底要取多少个字节就不对了