Problem Description
根据输入的半径值,计算球的体积。
Input
输入数据有多组,每组占一行,每行包括一个实数,表示球的半径。
Output
输出对应的球的体积,对于每组输入数据,输出一行,计算结果保留三位小数。
Sample Input
1
1.5
Sample Output
4.189
14.137
因为没有规定要输入几个,也没有伪数据作为结束输入的标志,所以我就加了个n来规定输入次数,可能会有更好的解决方案。
#include <stdio.h>
#include <stdlib.h>
#define pi 3.14159265
double VOLUME(double r);
int main (void){
double *r,*v;
int i,j,n;
scanf("%d",&n);
r=(double*)malloc(sizeof(double)*n);
v=(double*)malloc(sizeof(double)*n); /*free!!!!*/
for(i=0;i<n;i++){
scanf("%lf",&r[i]);
v[i]=VOLUME(r[i]);
}
for(j=0;j<n;j++){
printf("%.3f\n",v[j]);
}
free(r);
free(v);
return 0;
}
double VOLUME(double r){
double volume;
volume=4.0/3.0*pi*r*r*r;
return volume;
}