char choice;
float inputa, inputb;
cin >> inputa >> choice >> inputb;
while(inputa != 0 && choice != '0' && inputb != 0)
{
cout << " = " << calculation(inputa,choice,inputb) << endl << endl;
cin >> inputa >> choice >> inputb;
}
system("PAUSE");
return 0;
Run Code Online (Sandbox Code Playgroud)
这就是屏幕的样子:
5 + 4
= 9
Run Code Online (Sandbox Code Playgroud)
用户输入他们的输入并按下输入,这就是我猜他们到下一行的原因,但有没有办法让它显示:
5 + 4 = 9
Run Code Online (Sandbox Code Playgroud)
显示结果后,它将使用endl转到下一行,用户可以再次输入问题.
我是一个完全的初学者,如果这个问题没有多大意义,那就很抱歉.
您不能使用 do it,因为cin在您点击它后会打印每个字符。您必须定义自己的输入函数。
例如,您可以getch在conio.h(这不是一个有效的解决方案,因为 getch 只接受一个字符。您将不得不找到另一种方法。这里重要的是理解这个想法)。
#include <iostream>
#include <conio.h>
using namespace std;
void input(float *a, char *c, float *b)
{
char in;
do {
in = getch();
cout << in;
} while (in == ' ');
*a = in - '0';
do {
in = getch();
cout << in;
} while (in == ' ');
*c = in;
do {
in = getch();
cout << in;
} while (in == ' ');
*b = in - '0';
}
int main()
{
char choice;
float inputa, inputb;
cout << "Expression: ";
input(&inputa, &choice, &inputb);
cout << " = " << inputa+inputb << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)