#include<stdio.h>
#include<time.h>
#include<windows.h>
typedefstruct
{
intx,y;
charch;
}STU;
STUst[100];
//出現(xiàn)位置
voidgotoxy(intx,inty)
{
HANDLEhout;
COORDpos;
pos.X=x;
pos.Y=y;
hout=GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hout,pos);
}
/*隱藏光標(biāo)*/
voidshow_cursor(inthide)
{
CONSOLE_CURSOR_INFOcciCursor;
HANDLEhout;
hout=GetStdHandle(STD_OUTPUT_HANDLE);
if(GetConsoleCursorInfo(hout,&cciCursor))
{
cciCursor.bVisible=hide;
SetConsoleCursorInfo(hout,&cciCursor);
}
}
/*設(shè)置顏色*/
voidset_color(intcolor)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),color);
}
main()
{
inti,j;
show_cursor(0);
srand(time(NULL));
//初始化結(jié)構(gòu)體
for(i=0;i<100;i++)
{
st[i].x=rand()%80;
st[i].y=rand()%20;
st[i].ch=rand()%(49-47)+48;
}
while(1)
{
for(i=0;i<100;i++)
{
gotoxy(st[i].x,st[i].y);
set_color(0x2);//最先出現(xiàn)的顏色;
putchar(st[i].ch);
gotoxy(st[i].x,st[i].y-5);
putchar('');
st[i].y++;
st[i].ch=rand()%(49-47)+48;
if(st[i].y-5>=18)
{
gotoxy(st[i].x,st[i].y-1);
putchar('');
gotoxy(st[i].x,st[i].y-2);
putchar('');
gotoxy(st[i].x,st[i].y-3);
putchar('');
gotoxy(st[i].x,st[i].y-4);
putchar('');
gotoxy(st[i].x,st[i].y-4);
putchar('');
}
if(st[i].y>23)
{
st[i].x=rand()%80;
st[i].y=rand()%20;
}
gotoxy(st[i].x,st[i].y);
set_color(0xA);//由前一個(gè)顏色漸變成的顏色
putchar(st[i].ch);
}
Sleep(120);
}
}
color(0);printf("黑色\n");color(1);printf("藍(lán)色\n");color(2);printf("綠色\n");color(3);printf("湖藍(lán)色\n");color(4);printf("紅色\n");color(5);printf("紫色\n");color(6);printf("黃色\n");color(7);printf("白色\n");color(8);printf("灰色\n");color(9);printf("淡藍(lán)色\n");color(10);printf("淡綠色\n");color(11);printf("淡淺綠色\n");color(12);printf("淡紅色\n");color(13);printf("淡紫色\n");color(14);printf("淡黃色\n");color(15);printf("亮白色\n")幾個(gè)基本的顏色;