C語言怎么寫余弦和正弦曲線

本篇內容主要講解“C語言怎么寫余弦和正弦曲線”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C語言怎么寫余弦和正弦曲線”吧!

網站建設哪家好,找創(chuàng)新互聯建站!專注于網頁設計、網站建設、微信開發(fā)、微信小程序定制開發(fā)、集團企業(yè)網站建設等服務項目。為回饋新老客戶創(chuàng)新互聯還提供了廣元免費建站歡迎大家使用!

繪制余弦曲線

要求:在屏幕上用“*”(星號)顯示0°~360°的余弦函數cos(x)曲線。(不使用數組)

問題分析與算法設計

對一般的顯示器來說,只能按行輸出,即:輸出第一行信息后,想能向下一行輸出,不能再返回到上一行。為了獲得一個周期(0°~360°)的余弦函數圖形,j就必須在一行中一次輸出兩個“*”。

為了同時得到余弦函數cos(x)圖形在一行上的兩個點,考慮利用cos(x)的左右對稱性。將屏幕行方向定義為x,列方向定義為y。若定義圖形的總寬度為62行,計算出x行0°~180°時y點坐標m,那么在同一行與之對稱的180°~360°的y點坐標就應為62-m。程序中利用反余弦函數acos計算坐標(x,y)的對用關系。

程序說明與注釋

/****************繪制0~2PI區(qū)間內的余弦曲線****************//***********編者:董炳政******編寫時間2018/07/20**********//*******************************************************/#include <stdio.h>#include <math.h> int main(){  double y;          /*縱坐標y*/  int x,m;          /*橫坐標x*/  for(y = 1;y >= -1;y -= 0.1) /*縱軸y從1~-1,步長為0.1*/  {    m=acos(y)*10;      /*利用math.h中的反余弦函數,求對應橫坐標的值,此時m為int型變量*/    for(x = 1;x < m;x++)  /*開始逐行打點*/      printf(" ");    /*在曲線定點右側,打印空格*/    printf("*");      /*第一個曲線定點打印“*”*/    for(;x < 62-m;x++)   /*開始打印對稱曲線定點,由于對稱性x的終值為62-m*/      printf(" ");    /*在兩定點之間打印空格*/    printf("*\n");     /*第二個曲線定點打印“*”,并換行*/  }  return 0;}

運行結果:

[root@localhost 1_drawingcos]# ./drawingcos *                               *  *                           *   *                         *   *                        *    *                      *     *                     *     *                    *      *                   *      *                  *       *                 *       *                *        *               *        *              *         *             *         *            *          *           *           *         *           *        *            *       *             *     *               **

繪制正弦曲線

在已經會繪制余弦曲線的基礎上,我們來進一步探索如何利用C語言繪制正弦函數。

問題分析:

很自然的,我們想到將acos(y)換成asin(y),不就可以把畫余弦函數換成畫正弦函數了嗎??墒?,事實并沒有那么簡單。首先,0°~360°的正弦函數并不是一個簡單的左右對稱的圖形;其次,反三角函數x=asin(y)的值域為(-π/2,π/2),所以并不能通過簡單的求反三角函數值計算出(π,2π)這一段圖形的橫坐標。

這里提供一種方法。我們可以通過計算asin(y)來得到(0,π/2)這一段圖形的橫坐標;利用(0,π/2)的圖形和(π/2,π)關于x=π/2軸對稱,來得到(π/2,π)這一段圖形的橫坐標;通過計算π+asin(-y)的值,來得到(π,2π)這一段圖形的橫坐標。

/****************繪制0~2PI區(qū)間內的弦曲線****************//***********編者:董炳政******編寫時間2018/07/20**********//*******************************************************/#include <stdio.h>#include <math.h>#define PI 3.14159 int main(){  double y;          /*縱坐標y*/  int x,m;          /*橫坐標x*/  for(y = 1;y >= 0;y -= 0.1) /*先求0~PI,縱軸y從1~0,步長為0.1*/  {    m=asin(y)*10;      /*利用math.h中的反正弦函數,求對應橫坐標的值,此時m為int型變量*/    for(x = 1;x < m;x++)  /*開始逐行打點*/      printf(" ");    /*在曲線定點右側,打印空格*/    printf("*");      /*第一個曲線定點打印“*”*/    for(;x < 31-m;x++)   /*開始打印對稱曲線定點,由于0~PI的對稱性x的終值為31-m*/      printf(" ");    /*在兩定點之間打印空格*/    printf("*\n");     /*第二個曲線定點打印“*”,并換行*/  }  for(y -= 0.1;y >= -1;y -= 0.1)  {    m=(PI+asin(-y))*10;       for(x=1;x<m;x++)      printf(" ");    printf("*\n");    for(;x<(62-(m-31));x++)      printf(" ");    printf("*\n");  }  return 0;}

運行結果:

[root@localhost 1_drawingcos]# ./drawingsin        * *     *     *    *       *   *         *   *          *  *           *  *            * *             * *              **               **               *                *              *                 *             *                 *            *                  *           *                  *          *                   *        *                    *       *                     *     *                       **

到此,相信大家對“C語言怎么寫余弦和正弦曲線”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

本文題目:C語言怎么寫余弦和正弦曲線
網頁URL:http://muchs.cn/article12/jepcdc.html

成都網站建設公司_創(chuàng)新互聯,為您提供網頁設計公司建站公司、網站設計公司、搜索引擎優(yōu)化、響應式網站、微信公眾號

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

成都定制網站建設