模拟法:
#include <stdio.h>
#include <math.h>
int main(void)
...{
double i ;
int j,k;
for(i=1.0 ; i>=-0.4 ; i -=0.1)
...{
j = (int)(acos(i)*10) ;
for(k=0 ; k< j ; k )
printf(" ");
printf("*");
for(; k < 62-j ; k )
printf(" ");
printf("* ");
}
printf("the acos: ");
for(i=1.0 ; i>= -1.0 ; i-=0.1)
printf("%f->%f ",i,acos(i));
system("pause");
return 0 ;
}
利用余弦函数的特性(对称性)
#include <stdio.h>
#include <math.h>
int main(void)
...{
double i,k ;
int j ;
for(i=1.0 ; i>= -1.0 ; i-= 0.1 )
...{
k = (int)(acos(i)*10) ;
for(j=0 ; j<62 ; j )
...{
if ( j == k || j == 62 - k)
printf("*");
else
printf(" ");
}
printf(" ");
}
system("pause");
return 0 ;
}
NO.2
2.绘制正弦曲线
在屏幕上用“*”显示0-360度的余弦函数sin(x)曲线。
1.
/**//*
sin() line.
62 of line width
*/
#include <stdio.h>
#include <math.h>
int main(void)
...{
int j ,k,d,h;
double i ;
for(i=1.0 ; i> 0.0; i-=0.1)
...{
k = (int)(asin(i)*10) ;
for(j=0; j< k ; j ) /**//*print the left */
printf(" ");
printf("*");
for( ; j< 31-k ; j )
printf(" ");
printf("* ");
}
for(i=0.0 ; i>= -1.0 ; i-= 0.1)
...{
k = (int)(asin(i)*10) ;
for(j=0; j< k 33; j )
printf(" ");
printf("*");
for(; j< 62 - k ; j )
printf(" ");
printf("* ");
}
for(i=1.0 ; i>=-1.0 ; i-=0.1)
printf("%lf->%lf ",i,asin(i)) ;
system("pause");
return 0 ;
}
2.
#include <stdio.h>
#include <math.h>
int main(void)
...{
int j,k ;
double i ;
for(i=1.0 ; i>= -1.0 ; i -= 0.1)
...{
k = (int)(asin(i)*10);
printf("k=%d ",k);
for(j= 0 ; j<= 62 ; j )
if ( j == k || j == 62 k || j == 31-k ) /**//*利用对称性和周期性求解*/
printf("*");
else
printf(" ");
printf(" ");
}
system("pause");
return 0 ;
}
| 操作选项: 加精 解精 奖惩 设专题 设公告 解公告 固顶 总固顶 解固顶 结帖 解结帖 锁帖 解锁 移帖 删帖 |
所在位置:
看看评论