1. 程式人生 > >C之有趣-繪製餘弦曲線

C之有趣-繪製餘弦曲線

當我一開始看到這個問題的時候,我頓時懵圈了(委屈)。敲了這麼多程式碼,我也算是閱程式碼數千的菜鳥了,如果被這個問題難住,那我以後在程式設計界還怎麼混啊!(雖然本來就混得不怎麼地)於是乎,聰明的我便尋到了答案。
廢話少說。
把程式碼盛好端上來!

/*繪製餘弦曲線*/
#include<stdio.h>
#include<math.h>
void main()
{
double x,y; //定義橫縱座標x,y
for(y=1;y>=-1;y-=0.1) //餘弦一個週期內-1<=y<=1.
{
x=acos(y)*10;//把週期2*PI擴大10倍,x大約為62.
for(int i=1;i<=x;++i)//在*號之前應該有x個空格
printf(" ");//所以這裡要列印空格
printf("*");//在座標x處列印*(下同)
for(int i=1;i<=62-2*x;++i)
printf(" ");
printf("*\n");
}
}


我在這裡做一下簡要說明:
由於列印是從左到右、從上到下的,每次都要把一行的內容全部列印。而餘弦曲線(一個週期)又是對稱的,因此,每一行都必須列印一對星號。在每一行中,第一個星號之前的部分要用空格填充,每對星號之間的部分也要用空格來填充。列印結果如圖所示:
這裡寫圖片描述
ok!大功告成!
在下菜鳥一隻,才疏學淺,錯誤恐難以避免。若各位小夥伴們,發現錯誤或有更好的想法,還望留言告知,在下將萬分感謝!