我对c++还很陌生。我正在尝试创建一个非常基本的计算器,但我得到的结果完全错误。在尝试了我所知道的一切两个小时后,我陷入了停顿。我做错了什么?
#include <iostream>
using namespace std;
int main()
{
int a = 0.0;
int b = 0.0;
float sum = 'a' + 'b';
float diff = 'a' - 'b';
float prod = 'a' * 'b';
float quot = 'a' / 'b';
float rem = 'a' % 'b';
//Input
cout << "Enter a number: " << endl;
cin >> a;
cout << "Enter another number: " << endl;
cin >> b;
cout << a << " + " << b << " = " << sum <<endl;
cout << a << " - " << b << " = " << diff <<endl;
cout << a << " / " << b << " = " << quot <<endl;
cout << a << " * " << b << " = " << prod <<endl;
cout << a << " % " << b << " = " << rem <<endl;
return 0;
}
您使用character literals
进行计算。这里的CCD_ 2与CCD_。在计算时删除引号,但在打印实际文字"a"
时添加引号
float sum = 'a' + 'b';
您正在计算字符"的ASCII值;a";(它是65(,ASCII值为"0";b";(即66(
应该是
float sum = a + b;
相反。
当您打印值时,您执行了相反的操作:
cout << a << " + " << b << " = " << sum <<endl;
你希望它是
cout << "a" << " + " << "b" << " = " << sum <<endl;
相反。您希望为公式打印字符,而仅为结果打印数字。
您还可以计算a
和b
的值,然后它们才有实际值。你应该在输入它们之后再进行计算。
固定,通过将计算移动到输入之后;通过使用变量而不是文字。
#include <iostream>
using namespace std;
int main()
{
int a = 0.0;
int b = 0.0;
//Input
cout << "Enter a number: " << endl;
cin >> a;
cout << "Enter another number: " << endl;
cin >> b;
float sum = a + b;
float diff = a - b;
float prod = a * b;
float quot = a / b;
float rem = a % b;
cout << a << " + " << b << " = " << sum <<endl;
cout << a << " - " << b << " = " << diff <<endl;
cout << a << " / " << b << " = " << quot <<endl;
cout << a << " * " << b << " = " << prod <<endl;
cout << a << " % " << b << " = " << rem <<endl;
return 0;
}