计算机技术基础(c语言)课程设计 制作节日礼花.doc_第1页
计算机技术基础(c语言)课程设计 制作节日礼花.doc_第2页
计算机技术基础(c语言)课程设计 制作节日礼花.doc_第3页
计算机技术基础(c语言)课程设计 制作节日礼花.doc_第4页
计算机技术基础(c语言)课程设计 制作节日礼花.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

计算机技术基础课程设计C语言设计报告题目:制作节日礼花一、选题背景:随着节日的到来,人们都会在节日里燃放礼花,而且礼花的样式有很多,本程序就是实现了节日礼花的制作过程,礼花的制作,然后开始绽放。展现了一个美丽的节日场景。二、:设计思路 在这个制作节日礼花的程序里,开头是通过调用一系列的库函数,以备下面的程序使用。接着通过自定义一些函数,来说明存放礼花的位置,礼花的上升,礼花的形状,礼花的盛开等。这些自定义的函数包括一个结构体函数,定义存放礼花的位置,一个无返回值的函数定义礼花的上升等。在后面主函数中,通过调用这些自定义的函数来完成节日礼花的制作.三、主要解决问题的方法及技术关键: 本程序应用了while循环;for循环;switch分支语句;if条件选择语句等。四、流程图:INIT初始化开始FENGMIAN 绘制界面窗口是否按键 Y SHAN0 N UPDEFAULT结束2CENGDIAN1SWITCHBOMB五、程序清单:#include Conio.h/*字符模式函数*/#include graphics.h/*圆形与椭圆的综合使用*/#include stdio.h#include stdlib.h/*标准头文件申明*/#include bios.h#include math.h/*函数原代码*/struct cir /*存放礼花的位置*/ int x; int y;place;void initgr(void) /* BGI初始化 */int gd=DETECT,gm=0; initgraph(&gd,&gm,d:tc);void up() /*礼花炮上升*/ int aimy; randomize(); place.x=random(440)+100; /*设定礼花的范围*/ place.y=470; aimy=random(300)+60; setlinestyle(0,0,1); setcolor(WHITE); circle(place.x,place.y,3); while(place.y!=aimy) /*礼花的上升过程*/ setcolor(BLACK); circle(place.x,place.y,3); place.y-; setcolor(WHITE); circle(place.x,place.y,3); delay(1000); setcolor(BLACK); circle(place.x,place.y,3);shan() /*礼花形状一*/ int j,n1,x,t1=1,y; int p_color; for(j=0;j400;j+) n1=rand()%2; t1=pow(-1,n1); x=place.x+t1*(rand()%100); n1=rand()%2; t1=pow(-1,n1); y=place.y+t1*(rand()%100); if(xgetmaxx()-35) x=getmaxx()-35; if(y5) y=5; p_color=rand()%15; setlinestyle(0,0,3); setcolor(p_color); line(place.x,place.y,x,y); delay(1000); setcolor(BLACK); line(place.x,place.y,x,y); ceng() /*礼花形状二*/ float x,y,r; int i; int c_color; float k; k=2*3.14/60; for(r=10;r100;r+) for(i=0;i60;i+) x=r*sin(k*i)+place.x; y=r*cos(k*i)+place.y; if(xgetmaxx()-35) x=getmaxx()-35; if(y5) y=5; c_color=rand()%15; putpixel(x,y,c_color); delay(80); for(r=10;r100;r+) for(i=0;i60;i+) x=r*sin(k*i)+place.x; y=r*cos(k*i)+place.y; if(xgetmaxx()-35) x=getmaxx()-35; if(y5) y=5; putpixel(x,y,BLACK); delay(60); dian() /*礼花形状三*/ int i,j,r; float x500,y500; float k; int c_color; k=2*3.14/60;for(j=0;j500;j+) i=rand()%60; r=rand()%100; xj=r*sin(k*i)+place.x; yj=r*cos(k*i)+place.y; if(xjgetmaxx()-35) xj=getmaxx()-35; if(yj5) yj=5; c_color=rand()%15; setcolor(c_color); circle(xj,yj,1); delay(1500); for(j=0;j500;j+) setcolor(BLACK); circle(xj,yj,1); void bomb() /*礼花盛开*/ int r1,i,n,t=1,q=1,k=1; int pointX,pointY,point_color; setcolor(YELLOW);/*-这个过程模拟礼花爆炸瞬间的状态-*/ for(r1=1;r1=4;r1+) circle(place.x,place.y,r1); delay(1000); delay(3000); setcolor(RED); for(r1=4;r1=1;r1-) circle(place.x,place.y,r1); delay(1000); for(i=1;i=20;i+) point_color=rand()%15; n=rand()%2; t=pow(-1,n); pointX=(t*(rand()%6)+place.x); n=rand()%2; t=pow(-1,n); pointY=(t*(rand()%6)+place.y); putpixel(pointX,pointY,point_color); delay(2000); putpixel(pointX,pointY,BLACK); /*-*/ n=rand()%3; switch(n) /*随机盛开不同的厉害*/ case 0: shan(); break; case 1: ceng(); break; case 2: dian(); break; default: break; fengmian() /*封面程序*/ int i,j=0; while(1) /*/ settextstyle(0,0,4); /*设置文字输出模式*/ for(i=1;i5) break; cleardevice();main()initgr();fengmian();setbkcolor(BLACK); /*绘制窗体*/setcolor(YELLOW);setfillstyle(SOLID_FILL,9);rectangle(0,0,getmaxx(),getmaxy();rectangle(1,1,getmaxx()-1,getmaxy()-1);rectangle(2,2,30,getmaxy()-2);rectangle(getmaxx()-32,2,getmaxx()-2,getmaxy()-2);while(!kbhit() /*进入礼花程序*/ up(); bomb(); getch(); closegraph(); 六、总结:1、设计优点: 本程序简单明了,运用了所学的知识,一些库函数和调用,实现了节日礼花的绽放,易于操作。2、设计

温馨提示

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

评论

0/150

提交评论