以下是一個簡單的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); // 設(shè)置光標位置
printf("\033[1;31m"); // 設(shè)置紅色文本顏色
drawFirework();
delay(500); // 延時500毫秒
printf("\033[%d;%dH", y, x); // 設(shè)置光標位置
printf("\033[0m"); // 恢復默認文本顏色
drawFirework();
delay(500); // 延時500毫秒
}
return 0;
}
這個代碼使用了ANSI轉(zhuǎn)義序列來控制控制臺輸出的顏色和光標位置。首先定義了一個延時函數(shù)delay
,用于控制煙花的顯示時間。然后定義了一個繪制煙花的函數(shù)drawFirework
,它通過循環(huán)打印字符來繪制煙花的形狀。main
函數(shù)中使用rand
函數(shù)生成隨機的光標位置,然后通過ANSI轉(zhuǎn)義序列設(shè)置光標位置和文本顏色,調(diào)用drawFirework
函數(shù)來繪制煙花,并使用delay
函數(shù)控制煙花的顯示時間。
請注意,這只是一個簡單的示例,實際的煙花代碼可能更加復雜和精美。