c语言有趣代码案例,分享一段有趣的小代码

这篇博客展示了如何使用C语言创建数字雨效果。通过结构体、随机数生成和控制台输出函数,实现了数字在屏幕上从上至下滚动,当数字到达屏幕底部时重新随机出现在顶部,营造出数字雨的视觉体验。程序还包含了隐藏光标、设置颜色等细节处理,增加了视觉效果的真实感。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

#include

#include

//数字雨

typedef struct

{

int x, y;

char ch;

}STU;

STU st[5000];

//出现位置

void gotoxy(int x, int y)

{

HANDLE hout;

COORD pos;

pos.X = x;

pos.Y = y;

hout = GetStdHandle(STD_OUTPUT_HANDLE);

SetConsoleCursorPosition(hout, pos);

}

/*隐藏光标*/

void show_cursor(int hide)

{

CONSOLE_CURSOR_INFO cciCursor;

HANDLE hout;

hout = GetStdHandle(STD_OUTPUT_HANDLE);

if (GetConsoleCursorInfo(hout, &cciCursor))

{

cciCursor.bVisible = hide;

SetConsoleCursorInfo(hout, &cciCursor);

}

}

/*设置颜色*/

void set_color(int color)

{

SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), color);

}

main()

{

int i, j;

show_cursor(0);

srand(time(NULL));

//初始化结构体

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);

putchar(st[i].ch);

gotoxy(st[i].x, st[i].y - 5);

putchar(' ');

st[i].y++;

st[i].ch = rand() % (49 - 29) + 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);

putchar(st[i].ch);

}

Sleep(20);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值