C,按下Enter键后停止阅读行

时间:2019-08-31 12:46:53

标签: c

我需要读取一行,该行可以包含整数和实数以及以空格分隔的运算符('+','-','*'和'/')。 例如:9 2e2 + 5.0- 输入长度没有限制。 读取行后,必须将数字分开转换并存储在堆栈中。根据运算符,我们对堆栈中的前两个数字执行运算。对于上面的示例,我需要存储9,然后将2e2存储在堆栈中。然后将这两个弹出并执行加法(+)。将结果存储在堆栈上,然后在堆栈上存储5.0,最后执行减法。按下Enter键后,应打印输出,此处为-204。 我在读取和存储输入时遇到问题。

我使用scanf读取输入,但是一旦按下enter键,它就不会停止读取。因此,它不会打印任何输出。

char c[100];

while(should stop once enter is pressed)

{

   scanf("%s",c);

   //code

}

请帮助,谢谢。

0 个答案:

没有答案