以下是一个简单的C语言烟花代码示例:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void delay(unsigned int milliseconds) {
clock_t start_time = clock();
while (clock() < start_time + milliseconds);
}
void drawFirework() {
int i, j;
for (i = 0; i < 10; i++) {
for (j = 0; j < 20; j++) {
if (i == 0 || j == 0 || i == 9 || j == 19)
printf("*");
else
printf(" ");
}
printf("\n");
}
}
int main() {
int i;
srand(time(NULL));
for (i = 0; i < 10; i++) {
int x = rand() % 80 + 1;
int y = rand() % 20 + 1;
printf("\033[%d;%dH", y, x); // 设置光标位置
printf("\033[1;31m"); // 设置红色文本颜色
drawFirework();
delay(500); // 延时500毫秒
printf("\033[%d;%dH", y, x); // 设置光标位置
printf("\033[0m"); // 恢复默认文本颜色
drawFirework();
delay(500); // 延时500毫秒
}
return 0;
}
这个代码使用了ANSI转义序列来控制控制台输出的颜色和光标位置。首先定义了一个延时函数delay
,用于控制烟花的显示时间。然后定义了一个绘制烟花的函数drawFirework
,它通过循环打印字符来绘制烟花的形状。main
函数中使用rand
函数生成随机的光标位置,然后通过ANSI转义序列设置光标位置和文本颜色,调用drawFirework
函数来绘制烟花,并使用delay
函数控制烟花的显示时间。
请注意,这只是一个简单的示例,实际的烟花代码可能更加复杂和精美。