用C语言制作圣诞贺卡.doc_第1页
用C语言制作圣诞贺卡.doc_第2页
用C语言制作圣诞贺卡.doc_第3页
用C语言制作圣诞贺卡.doc_第4页
用C语言制作圣诞贺卡.doc_第5页
免费预览已结束,剩余6页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机技术基础课程设计C语言设计报告学院:机电工程学院专业:工业设计班级:060106姓名:王 鑫指导教师:韩志明设计日期:2007年7月10日题目:用C语言制作圣诞贺卡一、选题背景:圣诞将至,同学们正为给亲人朋友准备什么样的礼物而发愁,心里琢磨,要是能亲手制作一份礼物送给老师同学那该有多好,正好我们学习了c语言,所以我设计了这张圣诞卡赠给我敬爱的老师和同学们,希望大家在新的一年里工作顺利,学业进步。 二、设计思想:本程序主要是用图形的绘制,以及对月亮升起的实现。引进库函数,并初始化图形系统。才用调用函数的形式,用一个随机函数产生天空中闪烁的星星,并用随机函数产生烟火。用setcolor填充各图形的颜色。用circle函数画圆。用lineto画直线。三、程序流程图开始主函数说明所调用的函数调用start函数设置起始语句调用bgroud函数画出地面调用dstar函数画出满天彩星调用dtree函数画出绿色小树调用boy|girl函数画出男孩女孩调用dmoon函数画出升起的月亮调用say函数设置男孩说话内容设置fire函数画出绚丽的烟火调用dtext函数设置卡片下标调用fire函数结束四、程序清单#includemath.h#includestdlib.h#includestdio.h#includeconio.h#includegraphics.h#define PI 3.1415926struct moon int x; int y;moon;struct dramnstar int x; int y; int color;star200;void start();void bgroud();void dtree();void boy();void girl();void say();void dstar();void fire();void dmoon();void dtext();void main() start(); getch(); bgroud(); dstar(); dtree(); boy(); girl(); dmoon(); say(); dtext(); getch();void start() int gd=DETECT,gm; initgraph(&gd,&gm,d:tc); randomize(); cleardevice(); setbkcolor(3); setcolor(4); settextstyle(0,0,2); outtextxy(100,160,There is a gift for you.); settextstyle(0,0,2); outtextxy(100,240,Please input any key to start.);void bgroud() cleardevice(); setbkcolor(0); setcolor(15); setlinestyle(0,0,3); rectangle(0,400,640,480); setfillstyle(1,15); floodfill(480,450,15);void dstar() int i; for(i=0;i300;i+) stari.x=random(640); stari.y=random(400); stari.color=random(13)+1; for(i=0;i200;i+) putpixel(stari.x,stari.y,stari.color);void dtree() setcolor(8); line(150,280,150,390); line(150,390,130,404); line(130,404,190,404); line(190,404,170,390); line(170,390,170,280); line(170,280,150,280); setfillstyle(5,8); floodfill(160,300,8); setcolor(2); line(160,40,60,280); line(60,280,260,280); line(260,280,160,40); setfillstyle(1,2); floodfill(200,200,2); setcolor(7); arc(160,0,265,275,120); arc(160,0,262,278,160); arc(160,0,260,280,210);void boy() setcolor(15); ellipse(380,334,0,360,60,70); setfillstyle(1,15); floodfill(380,334,15); setcolor(7); circle(380,238,30); floodfill(380,238,7); setcolor(0); circle(370,230,2); circle(390,230,2); setfillstyle(1,0); floodfill(370,230,0); floodfill(390,230,0); circle(380,248,4); floodfill(380,248,0); setcolor(15); circle(380,248,2); setfillstyle(1,15); floodfill(380,248,15);void girl() setcolor(15); ellipse(480,340,0,360,50,64); setfillstyle(1,15); floodfill(480,340,15); setcolor(7); circle(480,256,24); floodfill(480,256,7); setcolor(0); arc(472,250,30,160,4); arc(488,250,10,140,4); setcolor(12); circle(470,259,5); circle(490,259,5); setfillstyle(1,12); floodfill(470,259,12); floodfill(490,259,12); setcolor(0); arc(480,260,250,286,10);void dmoon() int i,j; moon.x=20; moon.y=340; for(i=0;i10;i+) setcolor(14); circle(moon.x,moon.y,20); setfillstyle(1,14); floodfill(moon.x,moon.y,14); delay(99999999); if(i!=9) setcolor(0); circle(moon.x,moon.y,22); setfillstyle(1,0); floodfill(moon.x,moon.y,0); for(j=0;j5;j+) starj.x=random(40)+moon.x-20;starj.y=random(40)+moon.y-20;starj.color=random(13)+1;putpixel(starj.x,starj.y,starj.color); moon.x+=(int)20*sin(i*PI/18); moon.y-=35; void say() setcolor(15); setfillstyle(1,15); ellipse(410,200,0,360,10,5); ellipse(430,170,0,360,20,10); ellipse(488,120,0,360,100,30); floodfill(410,200,15); floodfill(430,170,15); floodfill(480,120,15);void fire() int b,j; int x0,y0; x0=random(40)+260; y0=random(40)+30; b=random(10); setlinestyle(0,0,1); j=random(200)+30; setcolor(4); line(x0+j,y0+b-10,x0+j,y0+b-20); line(x0+j,y0+b+10,x0+j,y0+b+20); setcolor(12); line(x0+j-10,y0+b,x0+j-20,y0+b); line(x0+j+10,y0+b,x0+j+20,y0+b); setcolor(14); line(x0+j-10,y0+b-10,x0+j-20,y0+b-20); line(x0+j+10,y0+b+10,x0+j+20,y0+b+20); setcolor(2); line(x0+j-10,y0+b+10,x0+j-20,y0+b+20); line(x0+j+10,y0+b-10,x0+j+20,y0+b-20); sleep(1); setcolor(0); line(x0+j,y0+b-10,x0+j,y0+b-20); line(x0+j,y0+b+10,x0+j,y0+b+20); line(x0+j-10,y0+b,x0+j-20,y0+b); line(x0+j+10,y0+b,x0+j+20,y0+b); line(x0+j-10,y0+b-10,x0+j-20,y0+b-20); line(x0+j+10,y0+b+10,x0+j+20,y0+b+20); line(x0+j-10,y0+b+10,x0+j-20,y0+b+20); line(x0+j+10,y0+b-10,x0+j+20,y0+b-20);void dtext() int a=1; int i; setcolor(4); ellipse(140,430,0,360,140,30); setfillstyle(1,15); floodfill(500,440,4); setcolor(RED); settextstyle(0,0,1); outtextxy(450,460,Made by Wang Xin.); do setcolor(a); settextstyle(0,0,2); outtextxy(20,420,Merry Chistmas!); setcolor(a+1); settextstyle(0,0,1); outtextxy(400,110,My darling :); outtextxy(405,120,I will always love you!); setcolor(a-1); outtextxy(450,460,Made by Wang Xin.); for(i=0;i30;i+) stari.x=random(100)+110; stari.y=random(140)+140; stari.color=random(13)+1; for(i=0;i40;i+) putpixel(stari.x,stari.y,stari.color); putpixel(stari.x+1,stari.y+1,stari.color); putpixel(stari.x-1,stari.y+1,stari.color); fire(); for(i=0;i40;i+) putpixel(stari.x,stari.y,2); putpixel(stari.x+1,stari.y+1,2); putpixel(stari.x-1,stari.y+1,2); a+; if(a=14) a=1; while(kbhit()=0);五、主要解决问题的方法及技

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论