當前位置:首頁 » 編程語言 » c語言怎麼畫佛
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言怎麼畫佛

發布時間: 2023-03-17 18:44:02

A. c語言中for循環嵌套的流程圖怎麼畫

(1)順序結構
順序結構的程序設計是最簡單的,只要按照解決問題的順序寫出相應的語句就行,它的執行順序是自上而下,依次執行。
例如;a
=
3,b
=
5,現交換a,b的值,這個問題就好像交換兩個杯子水,這當然要用到第三個杯子,假如第三個杯子是c,那麼正確的程序為:
c
=
a;
a
=
b;
b
=
c;
執行結果是a
=
5,b
=
c
=
3如果改變其順序,寫成:a
=
b;
c
=
a;
b
=
c;
則執行結果就變成a
=
b
=
c
=
5,不能達到預期的目的,初學者最容易犯這種錯誤。
順序結構可以獨立使用構成一個簡單的完整程序,常見的輸入、計算,輸出三步曲的程序就是順序結構,例如計算圓的面積,其程序的語句順序就是輸入圓的半徑r,計算s
=
3.14159*r*r,輸出圓的面積s。不過大多數情況下順序結構都是作為程序的一部分,與其它結構一起構成一個復雜的程序,例如分支結構中的復合語句、循環結構中的循環體等。
(2)
分支結構
順序結構的程序雖然能解決計算、輸出等問題,但不能做判斷再選擇。對於要先做判斷再選擇的問題就要使用分支結構。分支結構的執行是依據一定的條件選擇執行路徑,而不是嚴格按照語句出現的物理順序。分支結構的程序設計方法的關鍵在於構造合適的分支條件和分析程序流程,根據不同的程序流程選擇適當的分支語句。分支結構適合於帶有邏輯或關系比較等條件判斷的計算,設計這類程序時往往都要先繪制其程序流程圖,然後根據程序流程寫出源程序,這樣做把程序設計分析與語言分開,使得問題簡單化,易於理解。程序流程圖是根據解題分析所繪制的程序執行流程圖。
學習分支結構不要被分支嵌套所迷惑,只要正確繪制出流程圖,弄清各分支所要執行的功能,嵌套結構也就不難了。嵌套只不過是分支中又包括分支語句而已,不是新知識,只要對雙分支的理解清楚,分支嵌套是不難的。下面我介紹幾種基本的分支結構。
①if(條件)
{
分支體
}
這種分支結構中的分支體可以是一條語句,此時「」可以省略,也可以是多條語句即復合語句。它有兩條分支路徑可選,一是當條件為真,執行分支體,否則跳過分支體,這時分支體就不會執行。如:要計算x的絕對值,根據絕對值定義,我們知道,當x>=0時,其絕對值不變,而x<0時其絕對值是為x的反號,因此程序段為:if(x<0)
x=-x;
②if(條件)
else
這是典型的分支結構,如果條件成立,執行分支1,否則執行分支2,分支1和分支2都可以是1條或若干條語句構成。如:求ax^2+bx+c=0的根
分析:因為當b^2-4ac>=0時,方程有兩個實根,否則(b^2-4ac<0)有兩個共軛復根。其程序段如下:
d=b*b-4*a*c;
if(d>=0)
{x1=(-b+sqrt(d))/2a;
x2=(-b-sqrt(d))/2a;
printf(「x1=%8.4f,x2=%8.4f\n」,x1,x2);
}
else
{r=-b/(2*a);
i
=sqrt(-d)/(2*a);
printf(「x1=%8.4f+%8.4fi\n」r,
i);
printf(「x2=%8.4f-%8.4fi\n」r,i)
}
③嵌套分支語句:其語句格式為:
if(條件1)

else
if(條件2)
else
if(條件3)
……
else
if(條件n)
else
嵌套分支語句雖可解決多個入口和出口的問題,但超過3重嵌套後,語句結構變得非常復雜,對於程序的閱讀和理解都極為不便,建議嵌套在3重以內,超過3重可以用下面的語句。
④switch開關語句:該語句也是多分支選擇語句,到底執行哪一塊,取決於開關設置,也就是表達式的值與常量表達式相匹配的那一路,它不同if…else
語句,它的所有分支都是並列的,程序執行時,由第一分支開始查找,如果相匹配,執行其後的塊,接著執行第2分支,第3分支……的塊,直到遇到break語句;如果不匹配,查找下一個分支是否匹配。這個語句在應用時要特別注意開關條件的合理設置以及break語句的合理應用。
(3)循環結構:
循環結構可以減少源程序重復書寫的工作量,用來描述重復執行某段演算法的問題,這是程序設計中最能發揮計算機特長的程序結構,C語言中提供四種循環,即goto循環、while循環、do
–while循環和for循環。四種循環可以用來處理同一問題,一般情況下它們可以互相代替換,但一般不提倡用goto循環,因為強制改變程序的順序經常會給程序的運行帶來不可預料的錯誤,在學習中我們主要學習while、do…while、for三種循環。常用的三種循環結構學習的重點在於弄清它們相同與不同之處,以便在不同場合下使用,這就要清楚三種循環的格式和執行順序,將每種循環的流程圖理解透徹後就會明白如何替換使用,如把while循環的例題,用for語句重新編寫一個程序,這樣能更好地理解它們的作用。特別要注意在循環體內應包含趨於結束的語句(即循環變數值的改變),否則就可能成了一個死循環,這是初學者的一個常見錯誤。
在學完這三個循環後,應明確它們的異同點:用while和do…while循環時,循環變數的初始化的操作應在循環體之前,而for循環一般在語句1中進行的;while
循環和for循環都是先判斷表達式,後執行循環體,而do…while循環是先執行循環體後判斷表達式,也就是說do…while的循環體最少被執行一次,而while
循環和for就可能一次都不執行。另外還要注意的是這三種循環都可以用break語句跳出循環,用continue語句結束本次循環,而goto語句與if構成的循環,是不能用break和
continue語句進行控制的。
順序結構、分支結構和循環結構並不彼此孤立的,在循環中可以有分支、順序結構,分支中也可以有循環、順序結構,其實不管哪種結構,我們均可廣義的把它們看成一個語句。在實際編程過程中常將這三種結構相互結合以實現各種演算法,設計出相應程序,但是要編程的問題較大,編寫出的程序就往往很長、結構重復多,造成可讀性差,難以理解,解決這個問題的方法是將C程序設計成模塊化結構。
(4)模塊化程序結構
C語言的模塊化程序結構用函數來實現,即將復雜的C程序分為若干模塊,每個模塊都編寫成一個C函數,然後通過主函數調用函數及函數調用函數來實現一大型問題的C程序編寫,因此常說:C程序=主函數+子函數。
因此,對函數的定義、調用、值的返回等中要尤其注重理解和應用,並通過上機調試加以鞏固。

B. 如何用C語言畫基本圖形

下面舉一個用drawpoly()函數畫箭頭的例子。#include
#include
int main()
{
int gdriver, gmode, i;
int arw[16]={200,102,300,102,300,107,330,<br/>100,300,93,300,98,200,98,200,102};
gdriver=DETECT;
initgraph(&gdriver, &gmode, "c:\\caic\\bgi");
setbkcolor(BLUE);
cleardevice();
setcolor(12); /*設置作圖顏色*/
drawpoly(8, arw); /*畫一箭頭*/
getch();
closegraph();
return 0;
}
設定線型函數
在沒有對線的特性進行設定之前,TURBO C 用其默認值,即一點寬的實線,但TURBO C 也提供了可以改變線型的函數。線型包括:寬度和形狀。其中寬度只有兩種選擇:一點寬和三點寬。而線的形狀則有五種。下面介紹有關線型的設置函數。
void far setlinestyle(intlinestyle,unsigned upattern,int thickness); 該函數用來設置線的有關信息,其中linestyle是線形狀的規定,
見下表:
有關線的形狀(linestyle)
━━━━━━━━━━━━━━━━━━━━━━━━━
符號常數 數值 含義
─────────────────────────
SOLID_LINE 0 實線
DOTTED_LINE 1 點線
CENTER_LINE 2 中心線
DASHED_LINE 3 點畫線
USERBIT_LINE 4 用戶定義線
━━━━━━━━━━━━━━━━━━━━━━━━━
有關線寬(thickness)
thickness是線的寬度,見下表。
━━━━━━━━━━━━━━━━━━━━━━━━━
符號常數 數值 含義
─────────────────────────
NORM_WIDTH 1 一點寬
THIC_WIDTH 3 三點寬
━━━━━━━━━━━━━━━━━━━━━━━━━
對於upattern,只有linestyle選USERBIT_LINE 時才有意義 (選其它線型,uppattern取0即可)。此進uppattern的16位二進制數的每一位代表一個象元,如果那位為1,則該象元打開,否則該象元關閉。 void far getlinesettings(struct linesettingstypefar *lineinfo);該函數將有關線的信息存放到由lineinfo 指向的結構中,表中linesettingstype的結構如下:
struct linesettingstype
{
int linestyle;
unsigned upattern;
int thickness;
}

C. 怎樣用C語言畫出一個佛祖

你先能在紙上畫出來再說!!然後寫在你的電腦文本中(用符號畫),再用c語言讀出來!!

D. 如何利用c語言畫出一些好玩,好看的圖形

漂亮的需要一些第三方庫, 簡單的你可以用一個二維數組,這個數組就是像素點,
然後你通過函數給這個數組賦值, 例如r=a(1-sinθ),然後列印這個數組(值為1就是列印x否則是空格),然後你就會看到一個心形, 變換函數,就會變換圖形。

E. C語言如何畫圖

framebuffer(幀緩沖)。
幀的最低數量為24(人肉眼可見)(低於24則感覺到畫面不流暢)。
顯卡與幀的關系:由cpu調節其數據傳輸速率來輸出其三基色的配比。
三基色:RGB(紅綠藍)。

在沒有桌面和圖形文件的系統界面,可以通過C語言的編程來實現在黑色背景上畫圖!

用下面的代碼,在需要的地方(有注釋)適當修改,就能畫出自己喜歡的圖形!

PS:同樣要編譯運行後才能出效果。

  • #include <stdio.h>

  • #include <sys/mman.h>

  • #include <fcntl.h>

  • #include <linux/fb.h>

  • #include <stdlib.h>

  • #define RGB888(r,g,b) ((r & 0xff) <<16 | (g & 0xff) << 8 | (b & 0xff))

  • #define RGB565(r,g,b) ((r & 0x1f) <<11 | (g & 0x3f) << 5 | (b & 0x1f))

  • int main()

  • {

  • int fd = open("/dev/fb0", O_RDWR);

  • if(fd < 0){

  • perror("open err. ");

  • exit(EXIT_FAILURE);

printf("xres: %d ", info.xres);

printf("yres: %d ", info.yres);

printf("bits_per_pixel: %d ", info.bits_per_pixel);

size_t len = info.xres*info.yres*info.bits_per_pixel >> 3;

unsigned long* addr = NULL;

addr = mmap(NULL, len, PROT_WRITE|PROT_READ, MAP_SHARED, fd, 0);

if(addr == (void*)-1){

perror("mmap err. ");

F. C語言畫圓的格式是DrawFillCircle(x,y,1,color),問畫圓弧的格式是什麼

用arc() 可畫圓弧
功能: 函數arc()使用當前繪圖色並以實線畫一圓弧。
用法: 函數調用方式為void arc(int x,int y,int startangle,int endangle,int radius);
說明: 參數x,y為圓心坐標,startangle與endangle分別為起始角與終止角,radius為半徑。圓心坐標和半徑以像素個數給出,起始角和終止角以度為單位,0度位於右邊,90度位於頂部,180度位於左邊,底部是270度。同往常一樣,360度與0度重合。角度按逆時針方向增加,但並不要求終止角一定比起始角大。例如指定300度和90度分別為起始角和終止角,與指定300度和450度分別為起始角和終止角可畫出相同的弧。大於360度可作為參數,它將被化到0度 ̄360度范圍里。函數arc()能畫封閉圓,只要取起始角為0度,終止角為360度即可。此函數中,屏顯縱橫比可自動調節。

G. c語言的流程圖怎麼畫

如果會編程序而不會畫流程圖,建議先把自己的程序研究一遍。
若是畫主程序流程圖,那就需看懂主函數的程序,按照main()函數中的具體書寫過程來畫,例如:
程序開始---定義變數---初始化變數---使用選擇或者循環或者順序結構---調用某一個子函數(可以沒有)---程序結束
以上是最簡單的程序流程圖畫法。
若你是畫某一演算法或是某一模塊的流程圖,就要把相應的演算法或是模塊看懂。分析演算法或是模塊的具體走法,根據此走法就可以畫出對應的流程圖。
如果你是初學者,想根據流程圖的畫法而去嘗試編程,建議就一定要研究清楚每一個使用到的演算法,讀懂題目再開始編程。
下面是使VISO畫流程圖的幾個要點:
1、選擇下載一個合適版本的VISO
2、程序開始結束用膠囊
3、分頁用圓圈
4、輸入用平行四邊形
5、語句用方塊
6、判斷用菱形
7、列印用波浪

H. c語言如何畫圖

c語言畫圖 要選對 C語言編程工具。 目前最方便的是「習語言」,它能編譯所有C代碼,又能在C代碼中使用它支持的繪圖函數。
也可以使用二十年前的C語言編程工具來繪圖,通常是在DOS窗口中繪圖。

I. 怎麼用c語言畫函數圖像

我畫了半個正弦函數,其餘的你可以照著畫,歡迎討論,
#include "stdio.h"
#include "conio.h"
#include "math.h"
#include "graphics.h"

void main()
{
int driver,mode,i;
driver=DETECT;
mode=0;
initgraph(&driver,&mode,"");
setcolor(15);
for(i=0;i<360;i++)

line(i,200*sin(i*3.14/360),i+1,200*sin((i+1)*3.14/360));

getch();
restorecrtmode();
}

J. 如何用c語言畫圖,舉幾個最簡單的例子

首先需要繪圖函數的頭文件在TC2.0中是graphics.h
然後需要初始化圖形模式.
在利用繪圖函數
矩形:bar
圓形:circle
直線:line
等等。你可以到graphics.h文件中去看這些函數的參數
舉個例子

#include <stdio.h>
#include <graphics.h>

int main(void)
{
int gdriver; /*圖形驅動器*/
int gmode; /*圖形驅動模式*/

gdriver = DETECT; /*自動檢測硬體,已確定圖形驅動器*/
initgraph(&gdriver,&gmode,\"\");初始化圖形設備
setbkcolor(BLUE); /*設置屏幕背景顏色為藍色*/
circle(getmaxx() / 2,getmaxy() / 2,100); /*在屏幕中間繪制一個半
為100的圓*/
closegraph(); /*關閉圖形模式*/
return(0);
}