SHIR7*V 2020-03-12 21:40 采纳率: 60%
浏览 262
已采纳

c++萌新 c++计算机不懂算负数?

例如
-1.1-2.2+-3.3
答案: =-2.2
但正确的应该是-6.6才对。
请大佬指教。
#include
using namespace std;

int main4()
{
double a, b, c;
char op;
cin >> a >> op >> b >> op >> c;
switch (op)
{
case '+': cout << (a) + (b) + (c) << endl; break;
case '-': cout << (a) - (b) - (c) << endl; break;
case 'x': cout << (a) * (b) * (c) << endl; break;
case '/': cout << (a) / (b) / (c) << endl; break;

default:cout << "\n";
    break;

}

return 0;

}

  • 写回答

2条回答 默认 最新

  • threenewbee 2020-03-12 22:26
    关注

    cin >> a >> op >> b >> op >> c;
    当你输入
    -1.1-2.2+-3.3
    因为op只有一个存储变量后面的冲了前面的,op是+
    因此是
    case '+': cout << (a) + (b) + (c) << endl; break;
    也就是
    -1.2+2.2-3.3=-2.2

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘