问答详情
源自:6-11 编程练习

加法和乘法为什么不对(帮忙看一下。。谢谢)

如题。。。

提问者:去南极给企鹅洗热水澡 2015-07-17 13:39

个回答

  • Perona
    2015-07-17 14:07:09
    已采纳

    switch(c){
            case"+":
                result = a+b;
                break;
            case"-":
                result = a-b;
                break;
            case"*":
                result = a*b;
            case"/":
                result = a/b;
        }

    这里的加法做下数据转换吧,这里+被当作连接符了。

    result = parseFloat(a) + parseFloat(b);

    乘法出错,是因为忘了加break;,同样的除法也别忘了加。

    修改后的代码

    switch(c){
            case"+":
               result = parseFloat(a) + parseFloat(b);
                break;
            case"-":
                result = a-b;
                break;
            case"*":
                result = a*b;
                break;
            case"/":
                result = a/b;
               break;
        }


  • Fayne丶VALSK
    2015-07-17 14:02:46

    1.乘法后没有break;

    2.代码不严谨,应当分别获取a、b的值之后转为整型,这里是string型(使用typeof()可以看到变量的类型),加法应该是默认采用字符串的加法所以结果不对