请高手帮忙用C语言编个公式数学公式,公式已经给出。
double fun(double r,double h,double d) { double v=0; double temp1=d*r*r; double temp2=d*sqrt(2*r*h-h*h)*(r-h); if(h>0&&h<=r) { v=temp1*acos(1-h/r)-temp2; return v; } if(h>r&&h<=2*r) { v=3.1416*temp1-temp2-temp1*acos(h/r-1); return v; } return v; }别忘了加上#include<math.h>
#include<math.h> #include<stdio.h> double fun(double r,double h,double d) { double v=0; double temp1=d*r*r; double temp2=d*sqrt(2*r*h-h*h)*(r-h); if(h>0&&h<=r) { v=temp1*acos(1-h/r)-temp2; return v; } if(h>r&&h<=2*r) { v=3.1416*temp1-temp2-temp1*acos(h/r-1); return v; } return v; } void main() { double r,h,d,v; printf("r="); //输入r scanf("%lf",&r); printf("h="); //输入h scanf("%lf",&h); printf("d="); //输入d scanf("%lf",&d); v=fun(r,h,d); //计算v printf(v=%.5lf",v); //输出结果 }