这也是给爱问的一个朋友遍的,不知道还有没有好的方法。
<script type="text/javascript" src="http://ads.adbrite.com/mb/text_group.php?sid=170596&col=3&br=1"></script>
Your Ad Here
同一个问题下的另一个问题的解答
Q:m=2/1*2/3*4/3*4/5*6/5*6/7*.......用循环求出m的前一百项的数值。
#include
<
stdio.h
>
#include < math.h >
#define EX 0.000001
int main()
{
double x=0.0, temp=1.0, sin=0.0;
int i;
printf("Please input a degree:");
scanf("%lf",&x);
temp=x;
i=0 ;
while ( fabs(temp) >EX ) {
sin += temp;
i += 2;
temp = (-1) * temp*x*x/( (i+1)*(i) );
}
printf("sin(%lf) = %lf ",x,sin);
printf("The number is %d ",i);
return 0;
}
#include < math.h >
#define EX 0.000001
int main()
{
double x=0.0, temp=1.0, sin=0.0;
int i;
printf("Please input a degree:");
scanf("%lf",&x);
temp=x;
i=0 ;
while ( fabs(temp) >EX ) {
sin += temp;
i += 2;
temp = (-1) * temp*x*x/( (i+1)*(i) );
}
printf("sin(%lf) = %lf ",x,sin);
printf("The number is %d ",i);
return 0;
}
同一个问题下的另一个问题的解答
Q:m=2/1*2/3*4/3*4/5*6/5*6/7*.......用循环求出m的前一百项的数值。
#include
<
stdio.h
>
int main()
{
double m=1.0;
double x=2.0,y=1.0;
int i=0;
for ( i=0; i<100; ++i ) {
m*=x/y;
if ( i%2 == 0 ) {
y += 2;
}
else {
x += 2;
}
}
printf ( "%lf", m );
return 0;
}
int main()
{
double m=1.0;
double x=2.0,y=1.0;
int i=0;
for ( i=0; i<100; ++i ) {
m*=x/y;
if ( i%2 == 0 ) {
y += 2;
}
else {
x += 2;
}
}
printf ( "%lf", m );
return 0;
}