Online Compiler C

#include <stdio.h> #define PI 3.1415926 int main() { double r, c, s; scanf("%lf", &r); c = 2 * PI * r; s = PI * r * r; printf("%d\n %d\n ", c, s); return 0; }
这段代码的目的是从用户输入一个圆的半径,然后计算并输出圆的周长和面积。代码中使用了宏定义 `PI` 来存储圆周率。

代码存在一个问题:`printf` 中的格式说明符 `%d` 用于输出整数,但 `c` 和 `s` 是 `double` 类型(浮点数),这会导致输出结果不正确。

- 检查 `printf` 的格式说明符是否与变量类型匹配。`double` 类型应该使用 `%f` 或 `%lf` 来输出。
- 注意 `printf` 中格式字符串的写法,比如 `\n` 的位置和多余的空格,可能会影响输出格式。