失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > C语言+EasyX实现数字雨

C语言+EasyX实现数字雨

时间:2019-08-23 15:02:18

相关推荐

C语言+EasyX实现数字雨

/// 程序名称:数字雨// 编译环境:VC6.0 EasyX// 作者:flx413// 时 间:-5-2/#include <stdio.h>#include <windows.h>#include <graphics.h>#include <stdlib.h>#include <time.h>#define SCREEN_WIDTH 1366#define SCREEN_HEIGHT 768#define DEF_RAIN_NUM 91 //雨的列数//数字雨开始的位置int g_nRainPos[DEF_RAIN_NUM] = { 0 };//数字雨的字符串char g_strRain[DEF_RAIN_NUM][10] = { 0 };//随机产生一个字母char CreateRandomNum() {char nRandomNum = 0;while( 1 ) {nRandomNum = rand() % 123; //随机产生0~122的一个字符if( ( nRandomNum >= 65 && nRandomNum <= 90 ) || nRandomNum >= 97 ) {return nRandomNum;}}}//随机产生数字雨的开始位置void InitPos() {for( int i = 0; i < DEF_RAIN_NUM; i++ ) {g_nRainPos[i] = rand() % SCREEN_HEIGHT;}}//初始化数字雨void InitNumRain() {for( int i = 0; i < DEF_RAIN_NUM; i++ ) {for( int j = 0; j < 10; j++ ) {g_strRain[i][j] = CreateRandomNum();}}}//显示雨void ShowNumRain() {for( int i = 0; i < DEF_RAIN_NUM; i++ ) {//设置字体颜色settextcolor( RGB( 255, 255, 255 ) ); //白色for( int j = 0; j < 10; j++ ) {outtextxy( i * 15, g_nRainPos[i] - 15 * j, g_strRain[i][j] );settextcolor( RGB( 0, 255 - 28 * j, 0 ) );}}for( i = 0; i < DEF_RAIN_NUM; i++ ) {g_nRainPos[i] += 15; //屏幕刷新后雨的位置下降15}for( i = 0; i < DEF_RAIN_NUM; i++ ) {if( g_nRainPos[i] - 10 * 15 >= SCREEN_HEIGHT ) {g_nRainPos[i] = 0;}}}int main() {srand((unsigned)time(NULL));initgraph( SCREEN_WIDTH, SCREEN_HEIGHT );InitPos();InitNumRain();BeginBatchDraw();while( 1 ) {InitNumRain();ShowNumRain(); FlushBatchDraw();Sleep( 100 ); //延时0.1秒cleardevice(); //清空屏幕}EndBatchDraw();closegraph();return 0;}

如果觉得《C语言+EasyX实现数字雨》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。