如何修改这个程序,为什么只能算加法,不能算其他的算法

#include<stdio.h>
int main()
{
int a = 0;
int b = 0;
char c = 'a';
scanf("%d%c%d", &a, &c, &b);
if (c = '+')
{
int m = a + b;
printf("%d +%d = %d\n", a, b, m);
}
else
{
if (c = '-')
{
int m = a - b;
printf("%d - %d = %d\n", a, b, m);
}
else
{
if (c = '*')
{
int m = a * b;
printf("%d * %d = %d\n", a, b, m);
}
else
{
if (c = '/')
{
float m = a / b;
printf("%d / %d = %f\n", a, b, m);
}
else
printf("输入错误\n");
}
}
}
return 0;
}

"="是赋值符号,判断符号用“==”;还有,else后面可以直接接if,if(...){...}else if(...){...}这样

if (c = '+') 这里必须是 == ,if(c == '+') ,==是比较判断,= 是赋值。
后面几个 if() 都是这问题。