Question: Write a program that evaluates an expression in C: Example: Enter an expression: 1+2.5*3 Value of expression: 10.5 The operands in the expression are floating-point
Write a program that evaluates an expression in C:
Example: Enter an expression: 1+2.5*3 Value of expression: 10.5
The operands in the expression are floating-point numbers; the operators are +, -, *, and /. The expression is evaluated from left to right (no operator takes precedence over any other operator).
My attempt:
#include
int main(void) { char ch; float n, value; printf("Enter an expression: "); scanf("%f%c%f", &value, &ch); while (ch == '+' || '-' || '*' || '/') { scanf("%f", &n); if (ch == '+'){ value += n; } if (ch == '-'){ value -= n; } if (ch == '*'){ value *= n; } if (ch == '/'){ value /= n; } scanf("%c", &ch); } printf("Value of expression: %f", value); return 0; }
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
