求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积的程序,不过编译不过,提示是BT,BS,PT,L assigned a value which never use in funtion,和undefined symbol "L,S,BS" in funtion print
下面是源程序:
#include <stdio.h>
#include <conio.h>
#include <math.h>
long pi(void);
void print();
main()
{
int L,S,BS,BT,PT,r,h;
long n;
clrscr();
printf("Input the data:\n");
scanf("%d%d",&r,&h);
n=pi();
L=2*n*r;
S=n*r*r;
BS=4*n*r*r;
BT=(4/3)*n*r*r*r;
PT=S*h;
print();
}
long pi()
{
long sum=0;
int i=1,j=-1;
do
{
sum=sum+1/i;
j=j*1;
i+=2;
}while(sum>=pow(10,-6));
sum=sum/4;
return sum;
}
void print()
{
printf("L=%.2d",L);
printf("S=%.2d",S);
printf("BS=%.2d",BS);
printf("BT=%.2d",BT);
printf("PT=%.2d",PT);
}
----------------解决方案--------------------------------------------------------
看看这个吧:
#include <stdio.h>
#include <conio.h>
#include <math.h>
#define pi 3.14
//double pi();
void print(double L,double S,double BS,double BT,double PT);
int main(void)
{
double L,S,BS,BT,PT,r,h;
double n;
n=pi;
//clrscr();
printf("Input the data:\n");
scanf("%lf%lf",&r,&h);
//n=pi();
L=2*n*r;
S=n*r*r;
BS=4*n*r*r;
BT=(4/3)*n*r*r*r;
PT=S*h;
print(L,S,BS,BT,PT);
return 0;
}
/*double pi()
{
double sum=0;
int i=1,j=-1;
do
{
sum=sum+1/i;
j=j*1;
i+=2;
}while(sum>=pow(10,-6));
sum=sum/4;
return sum;
}*/
void print(double L,double S,double BS,double BT,double PT)
{
printf("L=%.2lf\n",L);
printf("S=%.2lf\n",S);
printf("BS=%.2lf\n",BS);
printf("BT=%.2lf\n",BT);
printf("PT=%.2lf\n",PT);
}
----------------解决方案--------------------------------------------------------
好厉害啊
我也要去学了
----------------解决方案--------------------------------------------------------
问一个小问题在上面程序中/*...*/中的程序会被编译器认识吗?好象记得这个是说明用得啊,学的不好请帮忙啊.谢谢啊
----------------解决方案--------------------------------------------------------
回楼上的/*………………*/之间是注释用,编译时,会自动跳过
----------------解决方案--------------------------------------------------------
我知道啊,我说得是上面给的程序得用法是什么意思
----------------解决方案--------------------------------------------------------
增加程序的易读性,它不属于C语句!
----------------解决方案--------------------------------------------------------