c语言程序设计 《图形动画,一起去看流星雨》

合集下载

流星雨C语言代码

流星雨C语言代码

流星雨C语言代码#include#define ID_TIMER 1#define STRMAXLEN 25 //一个显示列的最大长度#define STRMINLEN 8 //一个显示列的最小长度LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////// typedef struct tagCharChain //整个当作屏幕的一个显示列,这是个双向列表{struct tagCharChain *prev; //链表的前个元素TCHAR ch; //一个显示列中的一个字符struct tagCharChain *next; //链表的后个元素}CharChain, *pCharChain;typedef struct tagCharColumn{CharChain *head, *current, *point;int x, y, iStrLen; //显示列的开始显示的x,y坐标,iStrLen是这个列的长度int iStopTimes, iMustStopTimes; //已经停滞的次数和必须停滞的次数,必须停滞的次数是随机的}CharColumn, *pCharColumn;int main(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow){static TCHAR szAppName[] = TEXT ("matrix") ;HWND hwnd ;MSG msg ;WNDCLASS wndclass ;wndclass.style = CS_HREDRAW | CS_VREDRAW ;wndclass.lpfnWndProc = WndProc ;wndclass.cbClsExtra = 0 ;wndclass.cbWndExtra = 0 ;wndclass.hInstance = hInstance ;wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ;wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ;wndclass.hbrBackground = (HBRUSH) GetStockObject (BLACK_BRUSH) ;wndclass.lpszMenuName = NULL ;wndclass.lpszClassName = szAppName ;if(!RegisterClass (&wndclass)){MessageBox (NULL, TEXT ("此程序必须运行在NT下!"), szAppName, MB_ICONERROR) ;return 0;}hwnd = CreateWindow (szAppName, NULL,WS_DLGFRAME | WS_THICKFRAME | WS_POPUP,0, 0,GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN),NULL, NULL, hInstance,NULL) ;ShowWindow (hwnd, SW_SHOWMAXIMIZED) ; //最大化显示UpdateWindow (hwnd) ;ShowCursor(FALSE); //隐藏鼠标光标srand ((int) GetCurrentTime ()) ; //初始化随机数发生器while (GetMessage (&msg, NULL, 0, 0)){TranslateMessage (&msg) ;DispatchMessage (&msg) ;}ShowCursor(TRUE); //显示鼠标光标return msg.wParam ;}TCHAR randomChar() //随机字符产生函数{return (TCHAR)(rand()%(126-33)+33); //33到126之间}int init(CharColumn *cc, int cyScreen, int x) //初始化{int j;cc->iStrLen = rand()%(STRMAXLEN-STRMINLEN) + STRMINLEN; //显示列的长度cc->x = x+3 ; //显示列的开始显示的x坐标cc->y =rand()%3?rand()%cyScreen:0; //显示列的开始显示的y 坐标cc->iMustStopTimes = rand()%6 ;cc->iStopTimes = 0 ;cc->head = cc->current =(pCharChain)calloc(cc->iStrLen, sizeof(CharChain)); //生成显示列for(j=0; jiStrLen-1; j++){cc->current->prev = cc->point; //cc->point一个显示列的前个元素cc->current->ch = '\0';cc->current->next = cc->current+1; //cc->current+1一个显示列的后个元素cc->point = cc->current++; //cc->point = cc->current; cc->current++;}cc->current->prev = cc->point; //最后一个节点cc->current->ch = '\0';cc->current->next = cc->head;cc->head->prev = cc->current; //头节点的前一个为此链的最后一个元素cc->current = cc->point = cc->head; //free掉申请的内存要用current当参数cc->head->ch = randomChar(); // 对链表头的元素填充return 0;}LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){HDC hdc ;//ctn 用来确定一个显示链是否向下前进,如果等待次数超过必须等待的次数,ctn就代表要向下前进int i, j, temp, ctn; //j为一个显示链中除链表头外的在屏幕上显示的y坐标,temp绿色过度到黑色之用static HDC hdcMem;HFONT hFont;static HBITMAP hBitmap;static int cxScreen, cyScreen; //屏幕的宽度高度.static int iFontWidth=10, iFontHeight=15, iColumnCount; //字体的宽度高度, 列数static CharColumn *ccChain;switch (message){case WM_CREATE:cxScreen = GetSystemMetrics(SM_CXSCREEN) ; //屏幕宽度cyScreen = GetSystemMetrics(SM_CYSCREEN) ;SetTimer (hwnd, ID_TIMER, 10, NULL) ;hdc = GetDC(hwnd);hdcMem = CreateCompatibleDC(hdc);hBitmap = CreateCompatibleBitmap(hdc, cxScreen, cyScreen);SelectObject(hdcMem, hBitmap);ReleaseDC(hwnd, hdc);//创建字体hFont = CreateFont(iFontHeight, iFontWidth-5, 0, 0, FW_BOLD, 0, 0, 0,DEFAULT_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,DRAFT_QUALITY, FIXED_PITCH | FF_SWISS, TEXT("Fixedsys"));SelectObject(hdcMem, hFont);DeleteObject (hFont) ;SetBkMode(hdcMem, TRANSPARENT); //设置背景模式为透明iColumnCount = cxScreen/(iFontWidth*3/2); //屏幕所显示字母雨的列数ccChain = (pCharColumn)calloc(iColumnCount, sizeof(CharColumn));for(i=0; i{init(ccChain+i, cyScreen, (iFontWidth*3/2)*i);}return 0 ;case WM_TIMER:hdc = GetDC(hwnd);PatBlt (hdcMem, 0, 0, cxScreen, cyScreen, BLACKNESS) ; //将内存设备映像刷成黑色for(i=0; i{ctn = (ccChain+i)->iStopTimes++ > (ccChain+i)->iMustStopTimes;//(ccChain+i)->point = (ccChain+i)->head; //point用于遍历整个显示列//第一个字符显示为白色SetTextColor(hdcMem, RGB(255, 255, 255));TextOut(hdcMem, (ccChain+i)->x, (ccChain+i)->y, &((ccChain+i)->point->ch), 1);j = (ccChain+i)->y;(ccChain+i)->point = (ccChain+i)->point->next;//遍历整个显示列,将这个显示列里的字符从下往上显示temp = 0 ; //temp绿色过度到黑色之用while((ccChain+i)->point != (ccChain+i)->head && (ccChain+i)->point->ch){SetTextColor(hdcMem, RGB(0, 255-(255*(temp++)/(ccChain+i)->iStrLen), 0));TextOut(hdcMem, (ccChain+i)->x, j-=iFontHeight, &((ccChain+i)->point->ch), 1);(ccChain+i)->point = (ccChain+i)->point->next;}if(ctn)(ccChain+i)->iStopTimes = 0 ;else continue;(ccChain+i)->y += iFontHeight; //下次开始显示的y坐标为当前的y坐标加上一个字符的高度//如果开始显示的y坐标减去整个显示列的长度超过了屏幕的高度if( (ccChain+i)->y-(ccChain+i)->iStrLen*iFontHeight > cyScreen){free( (ccChain+i)->current );init(ccChain+i, cyScreen, (iFontWidth*3/2)*i);}//链表的头为此链表的前个元素,因为下次开始显示的时候就相当与在整个显示列的开头添加个元素,然后在开始往上显示(ccChain+i)->head = (ccChain+i)->head->prev;(ccChain+i)->head->ch = randomChar();}BitBlt(hdc, 0, 0, cxScreen, cyScreen, hdcMem, 0, 0, SRCCOPY);ReleaseDC(hwnd, hdc);return 0;case WM_RBUTTONDOWN:KillTimer (hwnd, ID_TIMER) ;return 0;case WM_RBUTTONUP:SetTimer (hwnd, ID_TIMER, 10, NULL) ;return 0;//处理善后工作case WM_KEYDOWN:case WM_LBUTTONDOWN:case WM_DESTROY:KillTimer (hwnd, ID_TIMER) ;DeleteObject(hBitmap);DeleteDC(hdcMem);for(i=0; i{free( (ccChain+i)->current );}free(ccChain);PostQuitMessage (0) ;return 0 ;}return DefWindowProc (hwnd, message, wParam, lParam) ; }。

c语言流星雨课程设计

c语言流星雨课程设计

c语言流星雨课程设计一、课程目标知识目标:1. 学生能理解C语言中随机数的生成原理,掌握rand()和srand()函数的使用方法。

2. 学生能运用C语言的基本语法,实现流星雨动画的基本效果。

3. 学生了解C语言中循环和条件语句在动画中的应用。

技能目标:1. 学生能够运用所学知识,独立编写并调试简单的C语言程序,实现流星雨动画效果。

2. 学生通过实践,掌握C语言编程的基本技巧,提高解决问题的能力。

情感态度价值观目标:1. 学生通过课程学习,培养对编程的兴趣和热情,增强对计算机科学的认识。

2. 学生在合作学习中,培养团队精神和沟通能力,学会相互鼓励和帮助。

3. 学生在课程实践过程中,培养耐心和细心的品质,体会编程带来的成就感。

课程性质:本课程为C语言编程入门课程,通过实现流星雨动画,让学生在实践中掌握C语言的基本语法和应用。

学生特点:本课程面向初学C语言的学生,他们对编程有一定的好奇心,但可能缺乏实际编程经验。

教学要求:教师需引导学生掌握C语言基本知识,关注学生在实践中的个体差异,鼓励学生主动思考和解决问题。

在教学过程中,注重培养学生的编程兴趣和团队协作能力。

通过课程目标的实现,使学生在知识、技能和情感态度价值观方面得到全面提升。

二、教学内容1. C语言基本语法回顾:变量声明与赋值、数据类型、运算符、表达式。

2. 控制结构:顺序结构、分支结构(if-else)、循环结构(for、while)。

3. 函数:函数定义、函数调用、全局变量与局部变量。

4. 随机数生成:rand()和srand()函数的使用,随机数的应用。

5. 图形编程:了解C语言中的图形编程库(如curses),绘制基本图形。

6. 动画实现:利用循环和延时,实现流星雨动画效果。

7. 键盘输入:捕捉用户按键,实现动画的暂停与退出。

教学内容安排与进度:第一课时:回顾C语言基本语法,介绍课程目标和教学内容。

第二课时:讲解控制结构,重点强调循环结构在动画中的应用。

单片机流星雨代码

单片机流星雨代码

单片机流星雨代码单片机流星雨代码文章引言:单片机流星雨代码是一种美丽的程序代码,利用它可以将LED流星效果呈现在电路板上。

本文将会介绍如何编写这样的程序代码,并给出详细的流程及代码实现。

正文:一、流星雨的效果实现原理流星雨效果实现原理主要是在程序里给LED灯一次一次地赋值,通过对不同LED灯的亮度和位置进行设置,呈现出一个肆虐的、绚丽的流星雨效果。

二、实现原理与电路设计在单片机中使用PWM波的方式来让LED灯产生不同强度的光线,最终实现流星雨效果。

将这些代码编辑到单片机后,LED灯的接线与电路板的配置也要进行正确的设置,保证了流星雨效果的实现。

三、流星雨代码的实现流程1. 首先,要对单片机进行初始化。

将所需的引脚设置为输出模式,并确保所有输出引脚的状态均为低电平状态。

2. 编写中断程序,配置定时器。

定时器周期性地产生中断,让程序可以重复运行,并实现LED灯的流星雨效果。

3. 设置流星雨效果的参数,如:流星雨强度、流星雨增长速率、流星雨的持续时间、流星雨的最大速度等等。

4. 编写主程序,流星雨效果的实现可以分为两个阶段:流星雨增长阶段和流星雨减弱阶段。

5. 在流星雨增长阶段,程序会根据设定的流星雨强度、速度等参数,将LED灯的亮度逐渐调高,并让LED灯在电路板上移动,呈现出流星雨的效果。

6. 在流星雨减弱阶段,程序会逐步降低LED灯的亮度,并让LED灯停止移动,在指定的时间内消失。

四、程序代码实现代码实现大致如下:// Declaration of the LEDs’ pins#define LED1 1#define LED2 2#define LED3 3#define LED4 4#define LED5 5#define LED6 6// Declaration of other parameters#define MAX_SPEED 20#define MAX_BRIGHTNESS 200#define MAX_DELAY 100static uint8_t curBrightness[6];static uint8_t delays[6];static uint8_t ledPos[6];static uint8_t speeds[6];void preCalcDelays() {for (uint8_t i = 0; i < 6; i++) {delays[i] += rand() % (MAX_DELAY - 1);}}void setup() {pinMode(1, OUTPUT);pinMode(2, OUTPUT);pinMode(3, OUTPUT);pinMode(4, OUTPUT);pinMode(5, OUTPUT);pinMode(6, OUTPUT);preCalcDelays();}void loop() {for (uint8_t i = 0; i < 6; i++) {// Brightness of the current LEDcurBrightness[i] += speeds[i];curBrightness[i] = min(curBrightness[i], MAX_BRIGHTNESS);// The LED is on the edge of the board, change the directionif (ledPos[i] > 9 || ledPos[i] == 0) {ledPos[i] = rand() % 3;speeds[i] = (rand() % (MAX_SPEED - 1)) + 1;}// Select the LEDs to be dimmedif ((rand() % (MAX_SPEED - 1)) + 1 > 12) {curBrightness[i] -= speeds[i];curBrightness[i] = max(curBrightness[i], 0);}// Update the LED with the new position and brightness analogWrite(i, curBrightness[i]);digitalWrite(ledPos[i], HIGH);delay(delays[i]);digitalWrite(ledPos[i], LOW);ledPos[i]++;}}结语:本文从实现原理到编写流程提供了全面的指导,使得想要编写单片机流星雨代码的开发者可以更加顺畅地完成这样的程序编程。

c语言礼花源代码直接复制

c语言礼花源代码直接复制

c语言礼花源代码直接复制以下是一份C语言礼花源代码,可以直接复制使用: ```#include <stdio.h>void printLine(int num) {for (int i = 0; i < num; i++) {printf('*');}printf('');}void printBlock(int num) {for (int i = 0; i < num; i++) {printLine(num - i);}}void printTriangle(int num) {for (int i = 0; i < num; i++) {printLine(i + 1);}}void printRect(int width, int height) {for (int i = 0; i < height; i++) { printLine(width);}}int main() {int choice;int num, width, height;printf('请选择礼花形状:');printf('1. 倒三角形');printf('2. 正三角形');printf('3. 长方形');scanf('%d', &choice);switch (choice) {case 1:printf('请输入行数:');scanf('%d', &num);printBlock(num);break;case 2:printf('请输入行数:');scanf('%d', &num);printTriangle(num);break;case 3:printf('请输入宽度和高度:');scanf('%d %d', &width, &height);printRect(width, height);break;default:printf('输入错误!');break;}return 0;}```这段代码可以根据用户输入的选项来打印不同形状的礼花。

简单浪漫的C语言代码

简单浪漫的C语言代码

简单浪漫的C语言代码C语言,作为计算机科学领域最为经典的语言之一,无论是在工程上还是在教学上都有着极大的影响力。

很多人认为,C语言的代码冗长且复杂,很难产生浪漫和柔软的感觉,但事实上,C语言也可以写出简单浪漫的代码,让人无法拒绝的韵味。

下面就介绍几个简单浪漫的C语言代码。

1.模拟心跳```c #include <stdio.h> #include <stdlib.h>#include <time.h> #include <unistd.h>#define MAX 100int main() { srand(time(NULL)); intcount = 0; while(1) { printf("#"); usleep((rand()%MAX)*1000); printf("#"); usleep((rand()%MAX)*1000); count++;if(count%60 == 0){ printf("\n"); } }return 0; } ```这段代码通过打印“#”字符来模拟心跳的跳动,加入了随机延迟,让它们的跳动速度变成了不规律的,更加具有人类般的柔软性。

同时,更加可爱的是,每打印60个“#”字符后,它会自动地换行,给人一种温暖而富有生气的感觉。

2.漂亮的打印矩形```c #include <stdio.h> #include <stdlib.h>#include <unistd.h>#define ROW 10 #define COL 40int main() { for(int i = 0; i < ROW; i++){ for(int j = 0; j < COL; j++){ if(i == 0 || i == ROW-1 || j == 0 ||j == COL-1){ printf("*"); } else{ printf(""); } } printf("\n"); usleep(100000); } return 0; } ```这段代码可以打印一个非常简单的矩形,但是通过在矩形外围的边框打印“*”字符,它变得非常漂亮。

零基础入门CC++实现你的浪漫表白:浪漫流星雨表白程序

零基础入门CC++实现你的浪漫表白:浪漫流星雨表白程序

零基础⼊门CC++实现你的浪漫表⽩:浪漫流星⾬表⽩程序想要讨⼥朋友欢⼼也巩固⾃⼰所学的知识,各位⼩伙伴有⾃⼰的想法了吗?准备好想要怎样实施了吗?有什么美好的计划了吗?如果没有的话那么别慌,我知道,在座的各位肯定都是有⾃⼰的⼼仪的姑娘,那么今天就教⼤家⼀招,做⼀个表⽩程序去进⾏表⽩,别等了,赶紧打开你的IED,跟着代码敲起来,不然的话,喜欢的⼈都跟别⼈跑了!直接源码分享:c#include<stdio.h>#include<graphics.h> //图形库:easyX201905#include<conio.h>#include<time.h>#define MAXSTAR 1314#define MAXMETEOR 520//结构体//⼏个星星:1000struct Star{int x, y;int color;int step;}star[MAXSTAR];//流星结构struct Meteor{int x, y;int style;int step;}meteor[MAXMETEOR];IMAGE img1, img2;//1.定义图⽚变量void printText(){//设置⽂字颜⾊settextcolor(RGB(255, 0, 255));//三原⾊:红,绿,蓝//调整字体⼤⼩settextstyle(50, 0, "华⽂⾏楷");//你的⽂采:发到公屏上/*海底⽉是天上⽉,眼前⼈是⼼上⼈春分⼗⾥,我喜欢你终是庄周圆了梦这是我的⼿背,这是我的脚背,你是我的宝贝。

⼀粥⼀饭/不及你/颦颦⼀笑问君能有⼏多愁?家⼈未⼊眼帘⼈消瘦我喜欢你,像风⾛了⼋万⾥,不问归期⽩酒清欢⽆别事,我在等风也在等你就承认⼀笑倾城⼀见⾃难忘问君能有⼏多愁?佳⼈未⼊眼帘⼈消瘦ABCDEFGHIJKLMNOPQRSTVWXYZ*///在指定位置输出字符串outtextxy(450, 20, "七⼣到了,炮姐我喜欢你");//设置⽂字颜⾊settextcolor(RGB(0, 255, 255));//三原⾊:红,绿,蓝//调整字体⼤⼩settextstyle(40, 0, "华⽂⾏楷");outtextxy(200, 100, "终是庄周圆了梦");outtextxy(200, 150, "春分⼗⾥,我喜欢你");outtextxy(200, 200, "⼀粥⼀饭不及你颦颦⼀笑");outtextxy(200, 250, "就承认⼀笑倾城⼀见⾃难忘");outtextxy(200, 300, "海底⽉是天上⽉,眼前⼈是⼼上⼈");outtextxy(200, 350, "⽩酒清欢⽆别事,我在等风也在等你");outtextxy(200, 400, "ABCDEFGHIJKLMNOPQRSTVWXYZ");outtextxy(200, 450, " 我喜欢你,像风⾛了⼋万⾥,不问归期");outtextxy(200, 500, "问君能有⼏多愁?佳⼈未⼊眼帘⼈消瘦");outtextxy(200, 550, "这是我的⼿背,这是我的脚背,你是我的宝贝。

C语言实现流星雨效果流程

C语言实现流星雨效果流程

C语⾔实现流星⾬效果流程⽬录⼀、头⽂件⼆、结构体三、初始化四、绘制函数五、移动函数六、界⾯设计七、主函数总结视频讲解感谢序再亮眼的流星,也会⼀闪⽽过。

嗨!这⾥是狐狸~~没错,我⼜来了,上次的“烟花”表⽩程序你学废了吗,这次我次我⼜来给⼤家⽀招啦,学会了“烟花”,我们⼀起来看“流星⾬”吧直接上界⾯上次忘记说了,因为我们是⽤C语⾔写的所以是控制台程序,创造不出来界⾯,那怎么办呢,我们就要⽤Windows的远房表亲EasyX图形库来建界⾯了,上次忘记说了,望谅解我们今天就和往常⼀样⼀步⼀步的教⼤家如何去完成这个“流星⾬”表⽩程序吧!⼀、头⽂件最近总是被吐槽为什么没有头⽂件,原因是呢,我觉得我分享项⽬最主要的⽬的是让⼤家学知识,头⽂件这些没营养的,开始就没有考虑,但鉴于需要的⼩伙伴太多了,我就发出来吧#include<stdio.h>#include<easyx.h> //第三⽅图形库,需要安装#include<time.h>#include<conio.h>#include<mmsystem.h>#pragma comment(lib,"winmm.lib")⼆、结构体⽼朋友结构体他⼜来了,不⽤多说,直接看struct Star //⼩星星{int x;int y;int r;int speed; //速度COLORREF color; //颜⾊};struct Meteor{int x;int y;int speed;};三、初始化初始化星星以及流星,要⽤到随机函数哦,让星星和流星看起来更⾃然。

//初始化星星void initStar(int i){star[i].x = rand() % getwidth();star[i].y = rand() % getheight();star[i].r = rand() % 3 + 1;star[i].speed = rand() % 5; //0 1 2 3 4star[i].color = RGB(rand() % 256, rand() % 256, rand() % 256);}//初始化流星void initMeteor(int i){//[0,2400)//[-1200,1200)meteor[i].x = rand() % (2 * getwidth()) - getwidth(); //[-1200,1200)meteor[i].y = 20 - 200;meteor[i].speed = rand()%15+1;}四、绘制函数绘制星星以及流星,简单的贴图就⾏啦绘制星星void drawStar(){for (size_t i = 0; i < STAR_NUM; i++){//putpixel(star[i].x, star[i].y, star[i].color);setfillcolor(star[i].color);solidcircle(star[i].x, star[i].y, star[i].r);}}//绘制流星void drawMeteor(){for (size_t i = 0; i < METEOR_NUM; i++){putimage(meteor[i].x, meteor[i].y, img + rand() % 2,SRCPAINT);}}五、移动函数不仅流星要动,星星也要跟着动,怎么动才能更⾃然,⾃⼰也可以优化⼀下。

c语言程序设计 《图形动画,一起去看流星雨》

c语言程序设计 《图形动画,一起去看流星雨》

/* Note:Your choice is C IDE */#include "stdio.h"#include"graphics.h"main(){int size,size2,i,size3,size4;void *buffer,*buffer2,*buffer3,*buffer4;int driver=DETECT,mode;initgraph(&driver,&mode,"");setcolor(15);rectangle(0,280,639,479);setfillstyle(0,1);floodfill(1,290,15);setcolor(15);arc(10,0,270,360,10);arc(30,0,180,270,10);arc(10,20,0,90,10);arc(30,20,90,180,10);setfillstyle(1,14);floodfill(20,10,15);/*xingxing*/setcolor(12);circle(30,400,15);line(30,415,10,435);line(30,415,50,435);line(20,425,20,460);line(40,425,40,465);/*ren*/circle(70,400,15);line(70,415,50,435);line(70,415,100,435);line(60,425,60,460);line(80,425,80,465);setcolor(15);arc(10,70,270,360,10);arc(30,70,180,270,10);arc(10,90,0,90,10);arc(30,90,90,180,10);setfillstyle(1,14);floodfill(20,80,15);setcolor(15);arc(110,0,270,360,10);arc(130,0,180,270,10);arc(110,20,0,90,10);arc(130,20,90,180,10); setfillstyle(1,0);floodfill(120,110,15);size=imagesize(9,0,31,21); buffer=malloc(size);getimage(9,0,31,21,buffer);size2=imagesize(109,0,131,21); buffer2=malloc(size2); getimage(109,0,131,21,buffer2);size3=imagesize(1,383,101,475); buffer3=malloc(size3); getimage(1,383,101,475,buffer3);size4=imagesize(4,69,31,91); buffer4=malloc(size4); getimage(4,69,31,91,buffer4);do{putimage(20,30,buffer2,0);delay(10000);putimage(20,30,buffer,0);delay(100000000);putimage(20,30,buffer2,0);delay(10000);putimage(20,30,buffer,0);delay(10000000);putimage(220,130,buffer2,0);delay(10000);putimage(220,130,buffer,0);delay(10000000);putimage(210,100,buffer2,0);delay(10000);putimage(210,100,buffer,0);delay(100000000);putimage(150,90,buffer2,0);delay(10000);putimage(150,90,buffer,0);delay(10000000 );putimage(350,70,buffer2,0);delay(10000);putimage(350,70,buffer,0);delay(100000000);putimage(300,100,buffer2,0);delay(10000);putimage(300,100,buffer,0);delay(100000000);putimage(500,40,buffer2,0);delay(10000);putimage(500,40,buffer,0);delay(10000000);putimage(600,20,buffer2,0);delay(10000);putimage(600,20,buffer,0);delay(100000000);}while(!kbhit());for(i=0;i<100 ;i+=10){putimage(9+i,384-i,buffer3,0);delay(10000);}getch();getch();do{for(i=0;i<100;i++){putimage(10+i+i+i+i+i+i,30+i,buffer4,0);delay(100);putimage(30+i+i ,70+i,buffer4,0);delay(10000);}} while(!kbhit());cleardevice();for(i=0;i<680;i++){setfillstyle(1,12);floodfill(1,1,15);rectangle(0,0,3+i,479+i);delay(1000);setfillstyle(1,12);floodfill(638,1,15);rectangle(637-i,0,639,479);delay(1000);}setcolor(4);settextstyle(1,0,14);outtextxy(100,100,"WE WILL BE TOGETHER FOR EVER");getch();getch();getch();setcolor(9);cleardevice();for(i=0;i<400;i++){circle(320,240,i++);delay(1000);}getch();cleardevice();setbkcolor(15);setcolor(4);for(i=0;i<400;i++){arc(0,0,270,360,i);arc(0,480,0,90,i);arc(640,480,90,180,i);arc(639,0,180,270,i);delay(1000);}getch();cleardevice();setcolor(4);setbkcolor(12);outtextxy(100,100,"Zhu Zhang Lao Shi : Wan Shi ru yi");getch();outtextxy(100,150," Xin Xiang Shi Cheng ");getch();outtextxy(100,200," Xiao Kou Chang Kai ");getch();outtextxy(100,250," yi sheng ping an ");getch();outtextxy(100,300,"zui hou dui ni de jiao dao ");getch();outtextxy(100,350," biao shi zheng xin de xie yi ");getch();closegraph();}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

/* Note:Your choice is C IDE */
#include "stdio.h"
#include"graphics.h"
main()
{
int size,size2,i,size3,size4;
void *buffer,*buffer2,*buffer3,*buffer4;
int driver=DETECT,mode;
initgraph(&driver,&mode,"");
setcolor(15);
rectangle(0,280,639,479);
setfillstyle(0,1);
floodfill(1,290,15);
setcolor(15);
arc(10,0,270,360,10);
arc(30,0,180,270,10);
arc(10,20,0,90,10);
arc(30,20,90,180,10);
setfillstyle(1,14);
floodfill(20,10,15);/*xingxing*/
setcolor(12);
circle(30,400,15);
line(30,415,10,435);
line(30,415,50,435);
line(20,425,20,460);
line(40,425,40,465);/*ren*/
circle(70,400,15);
line(70,415,50,435);
line(70,415,100,435);
line(60,425,60,460);
line(80,425,80,465);
setcolor(15);
arc(10,70,270,360,10);
arc(30,70,180,270,10);
arc(10,90,0,90,10);
arc(30,90,90,180,10);
setfillstyle(1,14);
floodfill(20,80,15);
setcolor(15);
arc(110,0,270,360,10);
arc(130,0,180,270,10);
arc(110,20,0,90,10);
arc(130,20,90,180,10); setfillstyle(1,0);
floodfill(120,110,15);
size=imagesize(9,0,31,21); buffer=malloc(size);
getimage(9,0,31,21,buffer);
size2=imagesize(109,0,131,21); buffer2=malloc(size2); getimage(109,0,131,21,buffer2);
size3=imagesize(1,383,101,475); buffer3=malloc(size3); getimage(1,383,101,475,buffer3);
size4=imagesize(4,69,31,91); buffer4=malloc(size4); getimage(4,69,31,91,buffer4);
do
{
putimage(20,30,buffer2,0);
delay(10000);
putimage(20,30,buffer,0);
delay(100000000);
putimage(20,30,buffer2,0);
delay(10000);
putimage(20,30,buffer,0);
delay(10000000);
putimage(220,130,buffer2,0);
delay(10000);
putimage(220,130,buffer,0);
delay(10000000);
putimage(210,100,buffer2,0);
delay(10000);
putimage(210,100,buffer,0);
delay(100000000);
putimage(150,90,buffer2,0);
delay(10000);
putimage(150,90,buffer,0);
delay(10000000 );
putimage(350,70,buffer2,0);
delay(10000);
putimage(350,70,buffer,0);
delay(100000000);
putimage(300,100,buffer2,0);
delay(10000);
putimage(300,100,buffer,0);
delay(100000000);
putimage(500,40,buffer2,0);
delay(10000);
putimage(500,40,buffer,0);
delay(10000000);
putimage(600,20,buffer2,0);
delay(10000);
putimage(600,20,buffer,0);
delay(100000000);
}while(!kbhit());
for(i=0;i<100 ;i+=10)
{
putimage(9+i,384-i,buffer3,0);
delay(10000);
}
getch();
getch();
do
{
for(i=0;i<100;i++)
{
putimage(10+i+i+i+i+i+i,30+i,buffer4,0);
delay(100);
putimage(30+i+i ,70+i,buffer4,0);
delay(10000);
}
} while(!kbhit());
cleardevice();
for(i=0;i<680;i++)
{
setfillstyle(1,12);
floodfill(1,1,15);
rectangle(0,0,3+i,479+i);
delay(1000);
setfillstyle(1,12);
floodfill(638,1,15);
rectangle(637-i,0,639,479);
delay(1000);
}
setcolor(4);
settextstyle(1,0,14);
outtextxy(100,100,"WE WILL BE TOGETHER FOR EVER");
getch();
getch();
getch();
setcolor(9);
cleardevice();
for(i=0;i<400;i++)
{
circle(320,240,i++);
delay(1000);
}
getch();
cleardevice();
setbkcolor(15);
setcolor(4);
for(i=0;i<400;i++)
{
arc(0,0,270,360,i);
arc(0,480,0,90,i);
arc(640,480,90,180,i);
arc(639,0,180,270,i);
delay(1000);
}
getch();
cleardevice();
setcolor(4);
setbkcolor(12);
outtextxy(100,100,"Zhu Zhang Lao Shi : Wan Shi ru yi");
getch();
outtextxy(100,150," Xin Xiang Shi Cheng ");
getch();
outtextxy(100,200," Xiao Kou Chang Kai ");
getch();
outtextxy(100,250," yi sheng ping an ");
getch();
outtextxy(100,300,"zui hou dui ni de jiao dao ");
getch();
outtextxy(100,350," biao shi zheng xin de xie yi ");
getch();
closegraph();
}。

相关文档
最新文档