batcj1 发表于 2013-10-15 22:03:20

选择分支结构有问题! 新手,感谢帮助

#include<stdio.h>
main()
{
        double a,b,d;
        char c;
        printf("本计算器只能算加法和除法,不要乱算哦,谢谢!\n");
        scanf("%lf%c%lf",&a,&c,&b);
        if (c='+')
                printf("%g+%g=%g\n",a,b,a+b);
        if (c='*')
                printf("%g*%g=%g\n",a,b,a*b);
        if(c!='*'&& c!='+')
                printf("给你说了本计算器只能算加法和乘法!\n");       
我不知道为啥,if选择结构用不上,也就是说我无论输入5+5或5/5(反正中间的符号没用到)直接就显示5+5=10和5*5=25了,为什么if没有上呢?


565123 发表于 2013-10-15 22:03:21




#include<stdio.h>
int main()
{
        double a, b, d;
        char c;
        printf("本计算器只能算加法和除法,不要乱算哦,谢谢!\n");
        scanf("%lf%c%lf", &a, &c, &b);
        if (c == '+')
                printf("%g+%g=%g\n", a, b, a + b);
        if (c == '*')
                printf("%g*%g=%g\n", a, b, a*b);
        if (c != '*' && c != '+')
                printf("给你说了本计算器只能算加法和乘法!\n");
}

两个等号

花开淡墨痕 发表于 2013-11-3 11:00:05

一个=是赋值两个=才是等于
页: [1]
查看完整版本: 选择分支结构有问题! 新手,感谢帮助