C语言-闪缩圣诞树
2023-12-25 17:26:57
可以生成一个闪缩的圣诞树哦,祝大家圣诞节快乐。
?
#include <windows.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define RED FOREGROUND_RED | FOREGROUND_INTENSITY
#define GREEN FOREGROUND_GREEN | FOREGROUND_INTENSITY
#define YELLOW (FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY)
#define BLUE FOREGROUND_BLUE | FOREGROUND_INTENSITY
#define WHITE FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY
#define RESET FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE
void setColor(int color) {
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), color);
}
void sleepMillis(int millis) {
Sleep(millis);
}
void clearScreen() {
system("cls");
}
int main() {
srand(time(NULL));
int height = 10; // 圣诞树的高度
int blinkRate = 500; // 闪耀频率(毫秒)
while (1) {
clearScreen();
for (int i = 1; i <= height; i++) {
int spaces = height - i;
int stars = 2 * i - 1;
// 打印空格
setColor(RESET);
for (int j = 0; j < spaces; j++) {
printf(" ");
}
// 打印彩色星号
for (int j = 0; j < stars; j++) {
int color = rand() % 4;
if (color == 0) {
setColor(RED);
} else if (color == 1) {
setColor(GREEN);
} else if (color == 2) {
setColor(YELLOW);
} else {
setColor(BLUE);
}
printf("*");
}
printf("\n");
}
// 打印树干
setColor(RESET);
for (int i = 0; i < height - 1; i++) {
printf(" ");
}
printf("|\n");
// 闪耀效果
sleepMillis(blinkRate);
}
return 0;
}
文章来源:https://blog.csdn.net/Joy19981127/article/details/135203979
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!