#include <stdio.h>
#define PI 3.141592653589793
void circumference(double r) {
printf("Circumference for radius %.2f = %.2f\n", r
, 2 * PI
* r
); }
void area(double r) {
printf("Circle Area for radius %.2f = %.2f\n", r
, PI
* r
* r
); }
void volume(double r) {
printf("Sphere Volume for radius %.2f = %.2f\n", r
, (4.0 / 3.0) * PI
* r
* r
* r
); }
int main(void) {
void (*calc[3])(double) = {circumference, area, volume};
int choice;
double radius;
printf("Enter 0 for Circumference, 1 for Circle Area, 2 for Sphere Volume: ");
if (choice >= 0 && choice <= 2) {
(*calc[choice])(radius);
} else {
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgojZGVmaW5lIFBJIDMuMTQxNTkyNjUzNTg5NzkzCgp2b2lkIGNpcmN1bWZlcmVuY2UoZG91YmxlIHIpIHsKICAgIHByaW50ZigiQ2lyY3VtZmVyZW5jZSBmb3IgcmFkaXVzICUuMmYgPSAlLjJmXG4iLCByLCAyICogUEkgKiByKTsKfQoKdm9pZCBhcmVhKGRvdWJsZSByKSB7CiAgICBwcmludGYoIkNpcmNsZSBBcmVhIGZvciByYWRpdXMgJS4yZiA9ICUuMmZcbiIsIHIsIFBJICogciAqIHIpOwp9Cgp2b2lkIHZvbHVtZShkb3VibGUgcikgewogICAgcHJpbnRmKCJTcGhlcmUgVm9sdW1lIGZvciByYWRpdXMgJS4yZiA9ICUuMmZcbiIsIHIsICg0LjAgLyAzLjApICogUEkgKiByICogciAqIHIpOwp9CgppbnQgbWFpbih2b2lkKSB7CiAgICB2b2lkICgqY2FsY1szXSkoZG91YmxlKSA9IHtjaXJjdW1mZXJlbmNlLCBhcmVhLCB2b2x1bWV9OwogICAgaW50IGNob2ljZTsKICAgIGRvdWJsZSByYWRpdXM7CgogICAgcHJpbnRmKCJFbnRlciAwIGZvciBDaXJjdW1mZXJlbmNlLCAxIGZvciBDaXJjbGUgQXJlYSwgMiBmb3IgU3BoZXJlIFZvbHVtZTogIik7CiAgICBzY2FuZigiJWQiLCAmY2hvaWNlKTsKCiAgICBpZiAoY2hvaWNlID49IDAgJiYgY2hvaWNlIDw9IDIpIHsKICAgICAgICBwcmludGYoIkVudGVyIHJhZGl1czogIik7CiAgICAgICAgc2NhbmYoIiVsZiIsICZyYWRpdXMpOwogICAgICAgICgqY2FsY1tjaG9pY2VdKShyYWRpdXMpOwogICAgfSBlbHNlIHsKICAgICAgICBwdXRzKCJJbnZhbGlkIGNob2ljZS4iKTsKICAgIH0KICAgIHJldHVybiAwOwp9