作者热门文章
- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章C语言+EasyX实现数字雨效果由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
本文实例为大家分享了C语言 EasyX实现数字雨的具体代码,供大家参考,具体内容如下 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
程序名称:数字雨
/
/
编译环境:VC6.
0
EasyX
/
/
作 者:flx413
/
/
时 间:
2016
-
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
;
}
|
效果图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我.
原文链接:https://blog.csdn.net/flx413/article/details/52014008 。
最后此篇关于C语言+EasyX实现数字雨效果的文章就讲到这里了,如果你想了解更多关于C语言+EasyX实现数字雨效果的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我是一名优秀的程序员,十分优秀!