在c中输入算术运算(例如5 * 4)

时间:2012-11-13 10:28:42

标签: c

我正在尝试创建一个程序,如果用户从键盘ex 5*45/7提供完整的算术运算,它将解释操作ex *,{{1} },/+并打印结果。如果用户每次输入数字或符号ex -*并将它们放入3个变量时,如何在没有用户按Enter的情况下阅读整个操作? 我尝试使用:

/

但我想这样做:

printf("give an operation")
scanf("%d%c%d",&num_1,&c,&num_2)

2 个答案:

答案 0 :(得分:2)

如果我理解你的问题和评论是正确的,你想要从用户那里读取一行输入,用户输入表达式并使用 Enter 键结束表达式?

然后使用scanf应该可以正常工作。您还可以使用fgets来获取该行,并使用sscanf进行解析。

答案 1 :(得分:-1)

scanf("%d %[*+-/] %d", &numA, op, &numB);

op应定义为char数组:char op[2];

解释

%[+-*/]:这意味着您希望%op符合字符+-*/