#include #include struct point { float x; float y; }; struct circle { struct point center; float radius; float circumference; float area; }; struct circle read_circle(); struct circle complete_circle(struct circle circle); int main(void) { struct circle circle; circle = read_circle(); circle = complete_circle(circle); printf("Circumference: %f\n", circle.circumference); printf("Area: %f\n", circle.area); return 0; } struct circle read_circle() { struct circle circle; printf("gimme da circ ( r): "); char buf[256] = {0}; fgets(buf, sizeof(buf) / sizeof(buf[0]), stdin); sscanf(buf, "<%f,%f> %f", &circle.center.x, &circle.center.y, &circle.radius); return circle; } struct circle complete_circle(struct circle circle) { circle.circumference = M_PI * 2 * circle.radius; circle.area = M_PI * circle.radius * circle.radius; return circle; }