![計算機技術(shù)基礎(chǔ)(c語言)課程設(shè)計-用C語言描繪玫瑰花_第1頁](http://file4.renrendoc.com/view/6844484aedf5b402b05785564182740d/6844484aedf5b402b05785564182740d1.gif)
![計算機技術(shù)基礎(chǔ)(c語言)課程設(shè)計-用C語言描繪玫瑰花_第2頁](http://file4.renrendoc.com/view/6844484aedf5b402b05785564182740d/6844484aedf5b402b05785564182740d2.gif)
![計算機技術(shù)基礎(chǔ)(c語言)課程設(shè)計-用C語言描繪玫瑰花_第3頁](http://file4.renrendoc.com/view/6844484aedf5b402b05785564182740d/6844484aedf5b402b05785564182740d3.gif)
![計算機技術(shù)基礎(chǔ)(c語言)課程設(shè)計-用C語言描繪玫瑰花_第4頁](http://file4.renrendoc.com/view/6844484aedf5b402b05785564182740d/6844484aedf5b402b05785564182740d4.gif)
![計算機技術(shù)基礎(chǔ)(c語言)課程設(shè)計-用C語言描繪玫瑰花_第5頁](http://file4.renrendoc.com/view/6844484aedf5b402b05785564182740d/6844484aedf5b402b05785564182740d5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、計算機技術(shù)基礎(chǔ)課程設(shè)計C語言設(shè)計報告題目:用C語言描繪玫瑰花一、選題背景通過C語言的學(xué)習(xí),我們知道了可以用C語言編寫的程序來描繪出優(yōu)美的畫面。 玫瑰花是美麗的代表。所以我將畫圖的程序來實現(xiàn)玫瑰花的圖象。二、設(shè)計思想本程序?qū)⒗脠D形庫函數(shù)、數(shù)學(xué)函數(shù)和標(biāo)準(zhǔn)I/O函數(shù)來實現(xiàn)函數(shù)的運行。依靠我們學(xué)過的調(diào)用函數(shù)來實現(xiàn)。圖形中玫瑰花的形狀是利用畫圖函數(shù)并根據(jù)其坐標(biāo)來實現(xiàn)的,圖形中的弧線是利用曲線函數(shù)實現(xiàn)的。主函數(shù)的調(diào)用函數(shù)大多是我們沒有學(xué)過的 initgraph /*初始化圖形系統(tǒng)*/ cleardevice /*清除圖形屏幕*/hua /*自己定義的函數(shù)*/ setcolor /*設(shè)置當(dāng)前畫圖顏色*/
2、rectangle /*話矩形邊框*/ getch /*輸入字符*/ closegraph /*關(guān)閉圖形系統(tǒng)*/floodfill/*填充一個有界區(qū)域*/三、程序流程圖: int i i=1I=360 N Yphi=I*da;xf=x*cos(phi) regisiter ii=0i+i3 Nellipse(x-98,y+100+I,255 Yi+ ellipse(x=70,y=34,180,233int driver=VGA,mode=VGAHI;四、主要解決問題: 一個簡單的玫瑰花程序這個玫瑰花的程序,可是問題不少,在這個語句(rc(x+64,y-57,300,490,17);)中出現(xiàn)了顏
3、色外瀉 。解決辦法:利用floodfill函數(shù)實現(xiàn)填充一個有界函數(shù)。五、程序清單:#include #include #include #include 35#define FNX(x) (int)(xo+(x)*1.0) #define FNY(y) (int)(getmaxy()-(yo+(y)*1.0) #define FNX2(phi) cos(phi)*ac-sin(phi)*bs #define FNY2(phi) cos(phi)*as+sin(phi)*bc /*畫旋轉(zhuǎn)的橢圓*/ void elli(int xo,int yo,int a,int b,double theta)
4、 int i; double da,c,s,ac,as,bc,bs,xf,yf,phi,x,y; theta=theta*0.01745; da=3*0.1745; c=cos(theta);s=sin(theta); ac=a*c;as=a*s;bc=b*c;bs=b*s; x=FNX2(0);y=FNY2(0); moveto(FNX(x),FNY(y); for(i=1;i=360;i+) phi=i*da;xf=x*cos(phi)*0.1;yf=b*sin(phi)*0.1; x=FNX2(phi);y=FNY2(phi); lineto(FNX(x),FNY(y); /*花*/ v
5、oid hua(int x,int y) register i; /*畫粉紅色玫瑰*/ setcolor(12); arc(x+65,y-60,150,350,8); arc(x+66,y-54,300,470,8); arc(x+65,y-56,30,230,10); arc(x+64,y-57,300,490,17); ellipse(x+73,y-30,250,450,27,40); ellipse(x+59,y-30,100,290,27,40); ellipse(x+65,y-40,140,270,20,30); setfillstyle(SOLID_FILL,5); floodfi
6、ll(x+65,y-20,12); /*畫紅色玫瑰*/ arc(x,y,150,350,12); arc(x+1,y+8,280,470,12); arc(x,y+2,30,230,16); arc(x,y+3,80,240,28); arc(x+2,y+8,180,330,22); arc(x-2,y+2,310,460,25); ellipse(x-12,y+30,120,300,30,40); ellipse(x+10,y+28,250,423,30,42); ellipse(x-4,y+10,290,393,30,40); setfillstyle(SOLID_FILL,4); flo
7、odfill(x+5,y+31,12); /*畫紫色花骨朵*/ ellipse(x+120,y+5,0,360,15,25); setfillstyle(SOLID_FILL,1); floodfill(x+120,y,12); /*畫黃色花骨朵*/ ellipse(x-70,y+10,0,360,14,20); setfillstyle(SOLID_FILL,14); floodfill(x-70,y+10,12); setcolor(10); /*畫紅花花萼*/ ellipse(x-15,y+32,190,310,30,35); ellipse(x+16,y+32,235,355,26,3
8、5); ellipse(x,y+35,190,350,43,50); arc(x,y+82,190,350,6); setfillstyle(SOLID_FILL,2); floodfill(x,y+75,10); /*畫粉花花萼*/ ellipse(x+50,y-48,190,320,22,50); ellipse(x+80,y-48,220,350,22,50); ellipse(x+65,y-28,180,360,36,50); floodfill(x+65,y+18,10); /*畫主枝*/ for(i=0;i3;i+) ellipse(x-98,y+100+i,255,371,100
9、,80); ellipse(x-20,y+30+i,260,358,140,140); ellipse(x+224,y+20+i,180,218,160,140); /*畫側(cè)枝*/ ellipse(x+70,y+34,180,233,140,140); ellipse(x,y+40,205,255,100,120); ellipse(x+135,y-30,209,249,72,120); ellipse(x,y+20,263,301,100,120); ellipse(x+85,y-10,278,305,100,120); ellipse(x+100,y-62,282,308,90,120);
10、 ellipse(x-50,y-10,277,314,30,120); ellipse(x+70,y+80,222,266,52,120); ellipse(x-60,y-45,229,266,52,120); ellipse(x+79,y-45,229,266,52,120); ellipse(x+84,y,224,273,52,120); ellipse(x+110,y+40,240,282,100,120); /*畫紫花骨朵花萼*/ ellipse(x+120,y-6,200,340,17,25); ellipse(x+120,y+7,160,380,17,27); floodfill(
11、x+122,y+30,10); /*畫黃花骨朵花萼*/ ellipse(x-70,y+15,140,390,17,20); ellipse(x-75,y-10,205,340,10,30); ellipse(x-60,y-10,195,340,5,30); floodfill(x-70,y+32,10); /*畫葉*/ /*畫右邊的葉子*/ elli(x+168,y+282,10,20,-40); elli(x+161,y+281,11,21,-39); elli(x+163,y+283,10,23,-41); elli(x+162,y+282,11,23,-41); elli(x+161,y
12、+253,7,15,262); elli(x+160,y+252,8,16,260); elli(x+159,y+251,7,15,261); elli(x+162,y+252,8,16,263); elli(x+144,y+271,10,17,-16); elli(x+142,y+270,11,16,-15); elli(x+140,y+270,10,18,-16); elli(x+145,y+270,8,16,-15); elli(x+145,y+273,9,15,-14); elli(x+140,y+271,8,16,-15); elli(x+145,y+270,8,14,-13); e
13、lli(x+155,y+222,10,21,-46); elli(x+156,y+224,10,20,-45); elli(x+157,y+224,12,20,-43); elli(x+156,y+220,10,22,-45); elli(x+150,y+200,8,16,270); elli(x+152,y+200,7,16,273); elli(x+150,y+204,8,15,270); elli(x+135,y+220,8,16,-10); elli(x+133,y+220,6,16,-12); elli(x+135,y+223,8,15,-10); elli(x+136,y+220,
14、7,15,-11); elli(x+137,y+221,8,16,-10); elli(x+138,y+220,8,15,-10); elli(x+140,y+222,9,15,-20); elli(x+137,y+222,8,15,-22); elli(x+140,y+220,9,14,-20); elli(x+146,y+144,8,16,-80); elli(x+143,y+144,7,16,-82); elli(x+145,y+141,8,15,-80); elli(x+130,y+130,6,12,235); elli(x+133,y+130,5,12,234); elli(x+13
15、0,y+134,6,11,235); elli(x+125,y+154,7,14,-10); elli(x+123,y+154,6,14,-13); elli(x+125,y+155,7,12,-10); elli(x+78,y+98,6,12,-90); elli(x+79,y+98,5,12,-92); elli(x+78,y+95,6,11,-90); elli(x+60,y+90,5,10,180); elli(x+65,y+90,4,10,182); elli(x+64,y+87,5,12,180); elli(x+66,y+88,5,13,150); elli(x+64,y+88,
16、4,13,153); elli(x+66,y+84,5,11,150); elli(x+70,y+109,5,10,-45); elli(x+73,y+109,4,10,-43); elli(x+70,y+105,5,9,-45); elli(x+80,y+100,6,11,120); elli(x+83,y+100,4,11,122); elli(x+80,y+103,6,10,120); elli(x+81,y+105,5,10,-55); elli(x+84,y+105,4,10,-53); elli(x+83,y+103,5,12,-55); /*畫左邊的葉子*/ elli(x-125
17、,y+270,12,24,60); elli(x-122,y+270,13,24,63); elli(x-125,y+273,12,22,60); elli(x-95,y+270,10,20,10); elli(x-98,y+270,13,20,11); elli(x-93,y+275,10,22,10); elli(x-110,y+245,10,20,90); elli(x-112,y+245,11,20,93); elli(x-110,y+246,10,22,90); elli(x-105,y+220,10,20,45); elli(x-102,y+220,11,20,42); elli(
18、x-104,y+223,10,18,45); elli(x-100,y+190,8,16,135); elli(x-98,y+190,7,16,133); elli(x-102,y+193,8,14,135); elli(x-102,y+190,8,12,135); elli(x-100,y+193,8,13,131); elli(x-75,y+210,8,16,-45); elli(x-77,y+210,8,15,-42); elli(x-75,y+215,7,16,-45); /*畫中間的葉子*/ elli(x+65,y+197,17,20,-45); elli(x+64,y+198,19,21,-44); elli(x+63,y+195,18,20,-43); elli(x+65,y+193,15,18,-45); elli(x+40,y+185,8,16,0); elli(x+42,y+183,7,15,1); elli(x+40,y+180,8,14,0); elli(x+44,y+183,7,17,1); elli(x+55,y+165,8,16,90); elli(x+55,y+169,8,14,88); elli(x+58,y+160,7,16,93); elli(x+54,y+166,7,16,91
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 12古詩三首《示兒》說課稿-2024-2025學(xué)年五年級語文上冊統(tǒng)編版001
- 2023六年級數(shù)學(xué)上冊 四 人體的奧秘-比說課稿 青島版六三制
- 會議總包合同范例
- 鋼板橋面面層施工方案
- 供熱公司用工合同范本
- 專業(yè)律師合同范例
- 債務(wù)合約合同范例
- 物業(yè)車輛清潔方案
- 公司聘用文秘合同范例
- 買礦協(xié)議合同范本
- 第八講 發(fā)展全過程人民民主PPT習(xí)概論2023優(yōu)化版教學(xué)課件
- 王崧舟:學(xué)習(xí)任務(wù)群與課堂教學(xué)變革 2022版新課程標(biāo)準(zhǔn)解讀解析資料 57
- 招投標(biāo)現(xiàn)場項目經(jīng)理答辯(完整版)資料
- 運動競賽學(xué)課件
- 重大事故隱患整改臺賬
- 2022年上海市初中畢業(yè)數(shù)學(xué)課程終結(jié)性評價指南
- 高考作文備考-議論文對比論證 課件14張
- 新華師大版七年級下冊初中數(shù)學(xué) 7.4 實踐與探索課時練(課后作業(yè)設(shè)計)
- 山東省萊陽市望嵐口礦區(qū)頁巖礦
- 《普通生物學(xué)教案》word版
- 安全生產(chǎn)應(yīng)知應(yīng)會培訓(xùn)課件
評論
0/150
提交評論