c语言 [Warning] multi-character character constant [-Wmultichar]


#include<stdio.h>
int main()
{
    double a,b,result;
    char c,d;
    do
    {
        printf("输入一个表达式 比如2+3,运算符只有加减乘除"); 
        scanf("%lf%c%lf",&a,&c,&b);
        if(c=='+') 
        {
            result=a+b;
            printf("a+b=%lf",result);
        }
        else if(c=='-') 
        {
            result=a-b;
            printf("a-b=%lf",result);
        }
        else if(c=='*') 
        {
            result=a*b;
            printf("a*b=%lf",result);
        }
        else 
        {
            result=a/b;
            printf("a/b=%lf",result);
        }
        printf("继续?yes or not\n");
        scanf("%c",&d);
        
        
    }
    while(d=='yes');
    return 0; 
    
}

使用的dev-c++ 5.11
问题一: [Warning] multi-character character constant [-Wmultichar] 这个怎么解决
问题二:scanf("%c",&d);这里,如果%c前不加空格,就不会执行该语句让我输入yes or not 但是我加了空格后,虽然输了yes程序还是结束运行了,并没有
继续循环。

c%输入的是一个字符
而yes是字符串
应该用字符数组存放
可以看下后面的内容