(1)设置窗口为黑色,字体颜色为绿色,隐藏光标等。
(2)定义一个二维数组保存所有字符的坐标。
(3)因为字符是不断下落的,所以使用 while(1) 语句使程序永远循环。
(4)每完成一次循环,当前字符的纵坐标值加一,并显示在对应的绘图窗口上,若当前字符的纵坐标值已落到窗口的最底部,则在窗口的显示内容中清除这一列字符,并随机产生一个新的字符坐标。
参考程序如下。
- #include"picture.h"//加入绘图头文件
- intb[60][2];//定义一个整数数组用于保存坐标值
- int main (
- {
- srand(time(0)):
- Cmd.BackColor("02");//设置黑底绿字
- Cmd.size(122,42);//设置窗口大小
- Cmd.HideCursor();//隐藏光标
- whi1e(1)//永远循环
- for(int i=0;i<60;i++)
- 1f(++b[i][1]>40)//先下落,再判断该字符是否落到窗口底部
- {
- for(int j=0;j<=40;j++)
- //清除这一列
- Cmd.Cout (b[i][],,"")
- b[i][0]=rand()号120+1;//随机产生新的坐标
- b[i][1]=-rand()号40;//y坐标值为负值,初始位置在窗口之上
- 1f(b[1][1]>=0)//如果没有落到窗口底部
- char c=rand()号94+33;//随机产生可见的ASCII码
- Cmd.Cout(b[i][0],b[i][1],CharToString(c));//显示字符
- S1eep(100);//延时100毫秒
- Win.Show();//启动绘图窗口