fork(2) download
  1. #include <stdio.h>
  2.  
  3. int main(void) {
  4. double a, b;
  5. char operation;
  6.  
  7. while (scanf("%lf %c %lf ", &a, &operation, &b) == 3) {
  8. double result = 0;
  9. switch(operation) {
  10. case '+':
  11. result = a + b;
  12. break;
  13. case '-':
  14. result = a - b;
  15. break;
  16. case '*':
  17. result = a * b;
  18. break;
  19. case '/':
  20. result = a / b;
  21. break;
  22. default:
  23. fprintf(stderr, "Unexpected operation: %c\n", operation);
  24. continue;
  25. }
  26. printf("%lg %c %lg = %lg\n", a, operation, b, result);
  27. }
  28.  
  29. return 0;
  30. }
  31.  
Success #stdin #stdout #stderr 0s 2116KB
stdin
3.2+1.0
2.3-0.3
1.7e+3+-3.2e2
3.0*-3.0
0.2/0
0.2/2.0
33o-44
stdout
3.2 + 1 = 4.2
2.3 - 0.3 = 2
1700 + -320 = 1380
3 * -3 = -9
0.2 / 0 = inf
0.2 / 2 = 0.1
stderr
Unexpected operation: o