最近是开学季,经过了军训,而且电脑还没带,索性只好在纸上自己写C语言程序了。
前几天在第一次正式讲C语言时,同学用AI豆包写出了一个通过输入体积求出球体半径的程序。只是这个程序十分复杂,对于新手来说不可能写得出来,于是我将程序简化,写在了纸上。
大概就是这个样子,也并不需要经过测试。(但是我还是用手机上的C语言编译器跑了一下,并没有什么问题)
可是我紧接着发现,这个程序的精度并不高,原因是我设定的变量是单精度浮点型变量float,这也就导致我将PI定义为3.14159还是3.1415926,同样的体积所求得的半径数值相同,想要解决这个问题的方法就是提升精度,将单精度浮点型变量改为双精度浮点型变量。这个程序我使用ai豆包写了出来,如下。
#include <stdio.h>
#include <math.h>
#define PI 3.1415926
int main()
{
double volume, radius;
// 输入球体体积
printf("请输入球体的体积:");
scanf("%lf", &volume);
// 根据公式计算半径
radius = pow((3 * volume)/(4 * PI), 1.0/3.0);
// 输出半径
printf("该球体的半径是:%.2lf\n", radius);
return 0;
}