天天看點

C語言執行個體|編寫C程式在控制台列印餘弦曲線

C語言文章更新目錄

C語言學習資源彙總,史上最全面總結,沒有之一

C/C++學習資源(百度雲盤連結)

計算機二級資料(過級專用)

C語言學習路線(從入門到實戰)

編寫C語言程式的7個步驟和程式設計機制

C語言基礎-第一個C程式

C語言基礎-簡單程式分析

VS2019編寫簡單的C程式示例

簡單示例,VS2019調試C語言程式

C語言基礎-基本算法

C語言基礎-資料類型

C語言中的輸入輸出函數

C語言流程控制語句

C語言數組——一維數組

C語言數組——二維數組

C語言數組——字元數組

C語言中常用的6個字元串處理函數

精心收集了60個C語言項目源碼,分享給大家

C語言核心技術——函數

C代碼是怎樣跑起來的?

C語言實作字元串的加密和解密

C語言——檔案的基本操作

使用C語言連結清單建立學生資訊并且将資訊列印輸出

圖解C語言冒泡排序算法,含代碼分析

執行個體分析C語言中strlen和sizeof的差別

開發C語言的3款神器,VS2019、VScode和IntelliJ Clion

動圖圖解C語言選擇排序算法,含代碼分析

動圖圖解C語言插入排序算法,含代碼分析

C語言指針數組和數組指針詳解

5分鐘搞懂C語言中的傳值和傳址

C語言——動态數組的建立和使用

C語言執行個體專欄(持續更新中…)

需求

在控制台列印餘弦曲線。

餘弦曲線又叫餘弦波(cosinwave),是一種來自數學三角函數中的餘弦比例的曲線。也是模拟信号的代表,與代表數字信号的方波相對。

标準的純餘弦函數公式為:

C語言執行個體|編寫C程式在控制台列印餘弦曲線

執行個體代碼

#include <stdio.h>
#include <math.h>

#define PI 3.141592653
#define BIG_SIZE 10 //圖形放大的倍數

int main() {
    int x;//x軸
    double y;//y軸
    int m;
    for (y = 1; y >= -1; y -= 0.1) {//y的取值範圍是-1~1,這裡設定步長為0.1
        m = acos(y) * BIG_SIZE;//計算y對應的橫坐标的值
        for (x = 1; x < m; x++) {
            printf(" ");//列印*之前的空格
        }
        printf("*");//列印*
        for (; x < 2 * PI * BIG_SIZE - m; x++) {//列印對稱面的空格和*
            printf(" ");
        }
        printf("*\n");
    }
}

           

運作結果

C語言執行個體|編寫C程式在控制台列印餘弦曲線

代碼分析

繪制餘弦曲線用到了反餘弦函數acos(),代碼中需要引入

#include <math.h>

頭檔案,acos(y)

通過縱坐标的值來求出橫坐标的值,确定了橫坐标的值,其對稱位置的橫坐标值也就可以确定,即用

2 * PI

減去求出的橫坐标值,為了讓列印出的曲線更直覺,代碼裡給x軸的值擴大了10倍。

如果您覺得本篇文章對您有幫助,請點贊,轉發給更多的人。

繼續閱讀