使用getchar()来存储数字

Omr*_*ama 0 c math calculator putchar getchar

我有一个任务,我应该在C中创建一个简单的算术计算器,它接受一个数字,一个运算符和一个第二个数字的输入并执行操作并输出它.听起来很简单吧?

我只限于使用getchar()和putchar()来输入数字.这意味着我必须一次读取整个输入一个字符...而我很困惑我将如何读取一个数字的两个字符(例如91的"9"和"1")作为一个数字.如果从右到左阅读getchar(),这将是一个不同的故事.但不幸的是,它不是......

我会感激任何指针!

Cra*_*son 5

这是一些伪代码: c = getchar() num = 0 while isdigit(c) num = (num * 10) + (c - '0') c = getchar()

这会累积数字,识别右边的每个新数字有效地将已经看到的数字乘以10.当看到非数字时,它会停止累积,所以解析像91 + 3这样的字符串.