c++编写一个火焰图案
时间: 2023-07-01 17:21:09 浏览: 48
好的,请参考以下代码实现火焰图案:
```cpp
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <Windows.h>
using namespace std;
int main()
{
srand((unsigned int)time(NULL)); // 设置随机数种子
while (true)
{
// 随机生成火焰颜色
int r = rand() % 256;
int g = rand() % 256;
int b = rand() % 256;
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
cout << "*";
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_INTENSITY);
cout << "*" << endl;
SetConsoleTextAttribute(hConsole, FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY);
// 延时一段时间
Sleep(50);
}
return 0;
}
```
代码中利用随机数生成火焰的颜色,并使用 `SetConsoleTextAttribute` 函数设置控制台输出的前景和背景颜色,然后输出火焰的形状,最后使用 `Sleep` 函数延时一段时间,形成动态效果。