-->
当前位置:首页 > 题库 > 正文内容

函数题:jmu-c-计算表达式

Luz4年前 (2021-11-12)题库697
输入一个表达式,计算表达式结果。如果表达式出现除0问题,输出divide error;如果表达式不合法,提示Invalid Expression。
本题数据保证:

- 输入的字符串不带空格。
- 输入数据全部是正整数。
- 不考虑优先级。表达式都是从左到右计算。如20+2*4 ,结果为160。
- 可以计算多步表达式,测试数据全部先乘除后加减的顺序。


### 函数接口定义:
c++
int ComputeExp(char *expstr, double *result);

expstr:表达式字符串。result:存放计算结果。函数返回值为表达式错误类型。


### 裁判测试程序样例:
c++
#include <stdio.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int ComputeExp(char *expstr, double *result);
int main()
{
char expstr[80];
double result;
int error;
scanf("%s",expstr);
error = ComputeExp(expstr, &result);//注意函数的返回值。
if ( error== -1)
printf("divide error");
else if (error == 0)
printf("Invalid Expression");
else if (error == 1)
printf("%.2f", result);

}

/* 请在这里填写答案 */


### 输入样例:

in
1/0


### 输出样例:

out
divide error

### 输入样例:

in
12+3@4


### 输出样例:

out
Invalid Expression

### 输入样例:

in
12+34-23


### 输出样例:

out
23.00

### 输入样例:

in
5/4+1


### 输出样例:

out
2.25







答案:若无答案欢迎评论

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。