|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- 表达式求值。
- 注意:输入输出中的空格
- 输入格式:
- 只有一行,依次为整数a、操作符op、和整数b,a、op、b中间有一个空格分隔。其中-10000<a,b<10000,操作符op为“+”、“-”、“*”、“/”、和“%”之一。。
- 输出格式:
- 只有一行,为a、b两个数通过op的计算结果。比如,输入为“1 + 2”,则计算1和2的和并输出“1 + 2 = 3”。
- 注意:当操作符op为“/”或“%”,且b为0时,算式无效,此时,程序输出一个单词:Invalid。
复制代码
我不会搞那个操作符的输入和正确输出
问题求助
根据你的描述,你需要编写一个程序来计算两个整数之间的表达式结果,并在输出中显示操作符和等号。
以下是一个示例的代码,用于解析输入并计算表达式结果:
- ++
- #include <stdio.h>
- int main() {
- int a, b;
- char op;
- scanf("%d %c %d", &a, &op, &b);
- switch (op) {
- case '+':
- printf("%d + %d = %d\n", a, b, a + b);
- break;
- case '-':
- printf("%d - %d = %d\n", a, b, a - b);
- break;
- case '*':
- printf("%d * %d = %d\n", a, b, a * b);
- break;
- case '/':
- if (b == 0) {
- printf("Invalid\n");
- } else {
- printf("%d / %d = %d\n", a, b, a / b);
- }
- break;
- case '%':
- if (b == 0) {
- printf("Invalid\n");
- } else {
- printf("%d %% %d = %d\n", a, b, a % b);
- }
- break;
- default:
- printf("Invalid operator\n");
- }
- return 0;
- }
复制代码
这段代码首先使用 scanf 函数按照格式读取输入的整数和操作符。然后,使用 switch 语句根据操作符执行相应的计算操作,并输出结果。对于除法和取模操作,我们需要检查除数是否为零,如果是零则输出 "Invalid"。
希望这个回答对你有帮助!如果还有其他问题,请随时提问。
球一个最佳答案谢谢啦!这对我非常重要! 
|
|