欢迎来到天天文库
浏览记录
ID:9852802
大小:33.00 KB
页数:8页
时间:2018-05-12
《计算机技术基础(c语言)课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、计算机技术基础课程设计C语言设计报告题目:雪花飞舞一、选题背景:问题的提出:我们在编制各种flash动画设计时,经常会用到风雪的背景,为此编制几个函数对于雪花飞舞的演示,此程序即可做艺术欣赏又可做背景设计。所以编制这个程序对动画设计有很大的积极意义。二、设计思想:雪花飞舞是一个简单的动画背景,没有过多的繁杂景象,思路简单,编程容易。很容易被初学者接受。在实现过程中,用到了while,for,if-else-if等循环语句。运用结构体。三、程序流程图开始调用库函数定义视频模式函数8定义流星雨雨点的结构体定义雪堆元素点的结构体定义4个for分别为赋结构体元素
2、值主函数开始(main)设定256色视频模式调用时间和已定义的4个for函数While(!kbhit)for语句if语句if-else-if语句8结束四、程序清单:#include#include#include#include#include#include#include#include#include#include#include#defineVGA2560x13#
3、defineTEXT_MODE0x03intn,i=0;unsignedcharfar*video_buffer=(charfar*)0xAL;voidSet_Video_Mode(intmode) /*视频模式函数*/{ unionREGSinregs,outregs; inregs.h.ah=0; inregs.h.al=(unsignedchar)mode; int86(0x10,&inregs,&outregs);}8structBlizzard /*流星雨雨点的结构体
4、*/{intSORT;intx;inty;};structBlizzardnum[300];structStack_Pixel /*雪堆元素点的结构体*/{intx;inty;};structStack_PixelNum[300];voidPlot_Pixel_Fast(intx,inty,charcolor)/*雪花的颜色为白色*/{video_buffer[((y<<8)+(y<<6))+x]=color;}voiddata_initialization() /*以下4个for分别
5、为赋结构体元素值*/{for(n=0;n<=299;n=n+1){num[n].x=random(640);8num[n].y=random(480);}for(n=0;n<=99;n=n+1){num[n].SORT=1;}for(n=100;n<=199;n=n+1){num[n].SORT=2;}for(n=200;n<=299;n=n+1){num[n].SORT=3;}}voidmain(){Set_Video_Mode(VGA256); /*设定256色图形模式*/srand(time(NULL));data_in
6、itialization();while(!kbhit()) { for(n=0;n<300;n++) { if(num[n].SORT==1)8 { if(num[n].y>=480) { Plot_Pixel_Fast(num[n].x,num[n].y,0); num[n].x=random(640); num[n].y=random(480-i/100); Plot_Pixel_Fast(num[n].x,num[n].y,15);
7、} Plot_Pixel_Fast(num[n].x,num[n].y,0); num[n].y+=1; num[n].x+=1; Plot_Pixel_Fast(num[n].x,num[n].y,15); } elseif(num[n].SORT==2) { if(num[n].y>=480) { Plot_Pixel_Fast(num[n].x,num[n].y,0); num[n].x=random(640); num[n]
8、.y=random(480-i/100); Plot_Pixel_F
此文档下载收益归作者所有