C语言图形程序设计报告Word文档格式.docx
- 文档编号:19357545
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:23
- 大小:188.58KB
C语言图形程序设计报告Word文档格式.docx
《C语言图形程序设计报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言图形程序设计报告Word文档格式.docx(23页珍藏版)》请在冰豆网上搜索。
voidstart();
voidtuoyuan();
voidguochang();
voidkaitou();
voidhuaban();
voidtree();
voidmoon();
voidend();
voidzai();
voidjian();
main()
{
intgdriver;
intgmode;
inti;
intline;
clrscr();
gdriver=DETECT;
initgraph(&
gdriver,&
gmode,"
C:
\\TC20\\BGI"
);
kaitou();
start();
getch();
tuoyuan();
delay(800);
setbkcolor(15);
cleardevice();
/*插入眼睛像*/
ellipse(320,240,0,360,30,17.5);
setcolor(4);
circle(320,240,17.5);
setfillstyle(1,4);
floodfill(320,240,4);
/*画颜色渐变同心圆*/
for(i=0;
i<
=30;
i++)
{
setcolor(i);
circle(320,240,20+i*10);
delay(80);
}
guochang();
delay(1000);
huaban();
moon();
tree();
delay(500);
end();
setbkcolor(6);
zai();
}
/*开头过渡*/
voidstart()
intgd;
intgm;
gd=DETECT;
gd,&
gm,"
randomize();
setbkcolor(3);
settextstyle(0,0,2);
outtextxy(100,160,"
\t\t\t\tAREYOUREADY?
!
"
outtextxy(100,240,"
Inputanykey,let'
sgo!
/*画一些形状颜色渐变椭圆*/
voidtuoyuan()
intx=360;
inty=160;
intdriver;
intmode=VGAHI;
intnum=20;
intt;
intb;
driver=DETECT;
driver,&
mode,"
//TC20//BGI"
t=y-30;
b=y-30;
setbkcolor(0);
num;
setcolor(i+2-1);
ellipse(200,230,0,360,t,b);
t-=5;
b+=5;
delay(300);
20;
ellipse(470,240,0,360,t,b);
t+=5;
b-=5;
/*画变色圆周运动*/
voidguochang()
intc;
setbkcolor(13);
for(c=1;
c<
9;
c++)
switch(c){
case1:
for(i=1;
640;
{
if(i==1)
{
setcolor(14);
for(b=1;
b<
240;
b++)
line(320,240,1,b);
}
else{}
}
break;
case2:
setcolor(4);
for(b=240;
480;
line(320,240,1,b);
case3:
if(i<
320&
&
i>
1)
setcolor(6);
line(320,240,i,479);
case4:
640&
=320)
setcolor(5);
line(320,240,i,479);
case5:
for(i=640;
0;
i--)
if(i==639)
setcolor(10);
for(b=480;
b>
b--)
line(320,240,639,b);
case6:
setcolor(3);
line(320,240,639,b);
case7:
setcolor(9);
line(320,240,i,1);
case8:
0)
setcolor(12);
line(320,240,i,1);
}
/*开头*/
voidkaitou()
inta;
chars[30];
gdriver,&
gmode,"
setbkcolor(14);
for(a=50;
a<
)
b=50;
setcolor(4);
circle(a,b,43);
setcolor(9);
ellipse(a,b,0,360,43,20);
ellipse(a,b,0,360,20,43);
setcolor(7);
ellipse(a,b,0,360,20,10);
setcolor(8);
circle(a,b,10);
setfillstyle(1,8);
floodfill(a,b,8);
a=a+90;
for(b=50;
a=50;
circle(a,b,45);
ellipse(a,b,0,360,21,45);
ellipse(a,b,0,360,45,21);
ellipse(a,b,0,360,22.5,12);
circle(a,b,12);
b=b+95;
b=430;
a=590;
setviewport(100,100,540,380,0);
setfillstyle(1,2);
setcolor(14);
rectangle(0,0,439,279);
floodfill(50,50,14);
setcolor(12);
settextstyle(4,0,8);
outtextxy(20,20,"
TCH"
setcolor(15);
settextstyle(3,0,5);
outtextxy(120,120,"
DREAMSTART!
settextstyle(3,0,2);
outtextxy(120,200,"
Pleaseinputanykey!
closegraph();
return0;
/*用math画颜色变化花瓣*/
voidhuaban()
floata,e;
floatx1,y1,x2,y2;
intgdriver=DETECT,b;
setcolor(GREEN);
for(b=1;
6;
switch(b){
case1:
for(a=0.0;
2*3.14;
a+=2*3.14/720)
{
e=100*(1+sin(4*a));
x1=320+e*cos(a);
x2=320+e*cos(a+3.14/5);
y1=240+e*sin(a);
y2=240+e*sin(a+3.14/5);
setcolor(10);
line(x1,y1,x2,y2);
}break;
case2:
setcolor(12);
case3:
setcolor(14);
case4:
setcolor
(1);
case5:
setcolor(9);
/*画树*/
voidtree()
setcolor(8);
line(80,400,80,440);
line(80,440,75,447);
line(75,447,91,447);
line(91,447,86,440);
line(86,440,86,400);
line(86,400,80,400);
setfillstyle(6,8);
floodfill(83,410,8);
setcolor
(2);
line(83,330,55,400);
line(55,400,111,400);
line(111,400,83,330);
setfillstyle(1,2);
floodfill(60,390,2);
line(83,290,55,360);
line(55,360,111,360);
line(111,360,83,290);
floodfill(80,310,2);
/*画月亮*/
voidmoon()
circle(570,70,40);
setfillstyle(1,14);
floodfill(570,70,14);
/*倒数第二结尾,过渡*/
voidend()
settextstyle(0,0,6);
outtextxy(90,200,"
THEEND!
setusercharsize(10,1,4,1);
outtextxy(220,380,"
/*正式结尾*/
/*用横线拼出“再”*/
voidzai()
inta,b,c,d,e,f,g,h,gdriver;
for(a=70;
300;
setcolor(14);
line(a,55,a,70);
a=a+1;
for(b=120;
350;
line(90,b,105,b);
b=b+1;
for(c=90;
280;
line(c,120,c,135);
c=c+1;
for(d=120;
d<
line(265,d,280,d);
d=d+1;
for(e=105;
e<
265;
line(e,180,e,195);
e+=1;
for(f=45;
f<
325;
line(f,240,f,255);
f+=1;
for(g=70;
g<
=255;
line(177.5,g,192.5,g);
g+=1;
for(h=243;
h<
=280;
line(h,335,h,350);
h+=1;
jian();
/*用横线拼出“见”,并署名*/
voidjian()
inta,b,c,d,e,f,g;
for(a=380;
555;
a+=1;
for(b=55;
250;
line(380,b,395,b);
b+=1;
for(c=55;
line(540,c,555,c);
c+=1;
for(d=220;
=350;
line(486,d,501,d);
d+=1;
for(e=486;
612;
line(e,335,e,350);
for(f=280;
line(597,f,612,f);
for(g=160;
=175;
arc(g,90,-90,0,300);
settextstyle(1,0,1);
outtextxy(335,420,"
TCHwaswrittenin2015-12-12"
5运行结果
开头
开头过渡
一些颜色形状渐变椭圆
颜色渐变同心圆
颜色按顺序变化花瓣+树+月亮
结尾过渡
结尾
6创新说明
使用for循环语句画出一些形状颜色渐变的椭圆和同心圆;
在椭圆里面画圆,并填充颜色,来实现眼睛的效果;
使用switch,if判断,和for循环来实现颜色如风车般变化的动画;
使用switch判断,for循环和line、数学函数来实现颜色变化的花瓣图案;
使用for循环,line函数,计算坐标的方式来画出中文“再见”二字;
参考文献
[1]全球最大中文IT社区.TurboC图形函数[EB/OL],,2005.3
[2]《C语言图形程序设计指导书》
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 图形 程序设计 报告