为什么我的简易计算器只执行了加法

#include <stdio.h>

int main() {
    int a, b;
    char c;
    scanf("%d%c%d", &a, &c, &b);
    if ( c = '+')
        printf("%d", a + b);
    else if ( c = '-')
        printf("%d", a - b);
    else if (  c = '*')
        printf("%d", a * b);
    else if ( c = '/') {

        if (b == 0)
            printf("ERROR");
        else
            printf("%d", a / b);
    } else
        printf("ERROR");

    return 0;
}

一个=是赋值符号,==才是等号

c语言里等于应写成==
eg:if(c=='+)