【发布时间】:2015-12-02 01:24:34
【问题描述】:
我做了这个计算器
#include <iostream>
using namespace std;
int main()
{
float a, b, result;
char operation;
while (1) {
cout << "Enter the calculation you want to perform (e.g: 1 + 2)\n>>";
cin >> a >> operation >> b;
switch(operation)
{
case '+':
result = a + b;
break;
case '-':
result = a - b;
break;
case '*':
result = a * b;
break;
case '/':
result = a / b;
break;
default:
cout << "\nInvalid operation. Program terminated." << endl;
return -1;
}
cout << "= " << result << "\n" << endl;
}
return 0;
}
如果您输入无效的内容,它应该会继续询问相同的问题并终止。
如果您在第一次终止时输入了无效的内容。但是,如果您输入了一个有效的操作,而您第二次输入了一个无效的字符,它会一直输出与在无效字符之前处理的相同的问题 + 答案。
【问题讨论】:
-
举个例子。你输入了什么?
-
这就是它的作用:输入您要执行的计算(例如:1 + 2)>>1 + 2 = 3 输入您要执行的计算(例如:1 + 2)> >x = 2 输入您要执行的计算(例如:1 + 2) >>= 2 输入您要执行的计算(例如:1 + 2) >>= 2 输入您要执行的计算(例如: 1 + 2) >>= 2 等等..
-
学习使用调试器是一件很棒的事情。
-
@Roemerdt 使用调试器单步执行代码时,您观察到了什么?
-
可能是因为你没有重置a、b、结果和操作。
标签: c++ loops calculator