C語言輔導:趣味程序百例(01)繪制圓

字號:

3.繪制圓
     在屏幕上用“*”畫一個空心的圓
    *問題分析與算法設(shè)計
     打印圓可利用圖形的左右對稱性。根據(jù)圓的方程:
     R*R=X*X+Y*Y
     可以算出圓上每一點行和列的對應(yīng)關(guān)系。
    *程序說明與注釋
    #include
    #include
    void main()
    {
     double y;
     int x,m;
     for(y=10;y>=-10;y--)
     {
     m=2.5*sqrt(100-y*y); /*計算行y對應(yīng)的列坐標m,2.5是屏幕縱橫比調(diào)節(jié)系數(shù)因為屏幕的
     行距大于列距,不進行調(diào)節(jié)顯示出來的將是橢圓*/
     for(x=1;x<30-m;x++) printf(" "); /*圖形左側(cè)空白控制*/
     printf("*"); /*圓的左側(cè)*/
     for(;x<30+m;x++) printf(" "); /*圖形的空心部分控制*/
     printf("*\n"); /*圓的右側(cè)*/
     }
    }