计算圆柱体的表面积和体积 - C

  • 本文关键字:圆柱体 表面积 计算 c
  • 更新时间 :
  • 英文 :


我正在编写一个不返回任何数据的函数。该程序计算圆柱体的面积和体积。我尝试使用的公式是表面积 = 2π ∗(半径(^2 + 高度∗(2π ∗ 半径(和体积 = π ∗(半径(^2 ∗高度我在设置方程式时遇到问题。我有这个:

surface_area_calc = (2 * PI) ∗ (pow (radius,2)) + height ∗ ((2 * PI) ∗ 
radius);
volume_calc = PI ∗ (pow (radius,2)) ∗ height;

但我确定这是错误的,因为我在尝试编译程序时遇到错误。 我得到的错误是说"文字和标识符之外不允许使用非 ASCII 字符"。

不要将=放在宏中

#define PI 3.14159...

使用=它被复制到代码中

volume_calc = PI ∗ (pow (radius,2)) ∗ height;

成为

volume_calc = = 3.14159 ∗ (pow (radius,2)) ∗ height;
//            ^^^^^^^^^

这是一个语法错误。

你有两个选择而不是错误的

#define PI = 3.14159265358979323846

要么坚持使用预处理器宏并执行

#define PI 3.14159265358979323846

或者通过执行以下命令使用const限定的 C 变量

const double PI = 3.14159265358979323846;

由于代码使用库函数pow()因此代码应向编译器提供此函数的原型。

这可以通过包含适当的库标头来实现。在这种情况下,请执行以下操作:

#include <math.h>

当编译完成时,告诉链接器实际链接实现math.h(通常驻留在libm.*(使用(用于 GCC(选项的库

-lm

(更多 这里(

请注意,当通过编译器控制链接器时,需要在源文件之后指定库,并使用库提供的内容。

gcc main.c -o main -lm

以下最有可能失败

gcc -lm main.c -o main

你在 Linux 中吗?是这样,做:

#include <math.h>

在代码的顶部并使用-lm进行编译,如下所示:

gcc test.c -o test -lm

最新更新