程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C語言繪制正余弦曲線的方法

C語言繪制正余弦曲線的方法

編輯:關於C語言

今天來學習一個小小的實例,使用C語言實現在屏幕上用“*”顯示0-360度的余弦函數cos(x)曲線。

模擬法:

#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 ;
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved