六边形的表面积

时间:2015-11-15 17:32:19

标签: c geometry

我目前正在尝试学习C,并且已经使这个程序计算出正六边形的面积:

#include <stdio.h>
#include <math.h>

void main(){
int a;
float ans;
scanf("%d", &a); // get length of side

ans = ((pow(a, (1/3)))/2)*(a*a);

printf("%f", ans);
}

然而,它输出看似随机的数字。

1 个答案:

答案 0 :(得分:2)

首先,您的代码不会编译(<!DOCTYPE html> <html> <head> <title>Register!</title> </head> <body> <form method="post" name="register"> <label>Registration</label><br> <label>New username</label><br> <input type="text" name="user"><br> <label>New password</label><br> <input type="text" name="password"><br> <input type="submit" name="register" value="Register now!"> </form> </body> </html> ),您也应该使用Missing semicolon代替int main()

其次你的公式也错了,边长void main()的正六边形面积计算为a

第三,像((3√3)/2)*a²这样的表达式总是产生零,因为它们都是整数,以获得预期的行为使其中一个浮点数/双精度。例如1/31.0/3等。

(float)1/3