fork download
  1. #include <stdio.h>
  2.  
  3. #define PI 3.141592653589793
  4.  
  5. void circumference(double radius)
  6. {
  7. double result = 2 * PI * radius;
  8.  
  9. printf("\nCircle circumference\n");
  10. printf("Radius = %.2f\n", radius);
  11. printf("Circumference = %.2f\n", result);
  12. }
  13.  
  14. void circleArea(double radius)
  15. {
  16. double result = PI * radius * radius;
  17.  
  18. printf("\nCircle area\n");
  19. printf("Radius = %.2f\n", radius);
  20. printf("Area = %.2f\n", result);
  21. }
  22.  
  23. void sphereVolume(double radius)
  24. {
  25. double result = (4.0 / 3.0) * PI * radius * radius * radius;
  26.  
  27. printf("\nSphere volume\n");
  28. printf("Radius = %.2f\n", radius);
  29. printf("Volume = %.2f\n", result);
  30. }
  31.  
  32. int main(void)
  33. {
  34. void (*calculations[3])(double) =
  35. {
  36. circumference,
  37. circleArea,
  38. sphereVolume
  39. };
  40.  
  41. int choice;
  42. double radius;
  43.  
  44. printf("Enter 0 to calculate circle circumference\n");
  45. printf("Enter 1 to calculate circle area\n");
  46. printf("Enter 2 to calculate sphere volume\n");
  47.  
  48. scanf("%d", &choice);
  49.  
  50. if (choice < 0 || choice > 2)
  51. {
  52. printf("Invalid choice.\n");
  53. }
  54. else
  55. {
  56. printf("Enter radius: ");
  57. scanf("%lf", &radius);
  58.  
  59. (*calculations[choice])(radius);
  60. }
  61.  
  62. return 0;
  63. }
Success #stdin #stdout 0s 5320KB
stdin
Standard input is empty
stdout
Enter 0 to calculate circle circumference
Enter 1 to calculate circle area
Enter 2 to calculate sphere volume
Invalid choice.