21xrx.com
2025-03-30 04:41:14 Sunday
文章检索 我的文章 写文章
"C++代码示范: 心形表白表达"
2023-07-05 03:17:21 深夜i     14     0
C++ 代码示范 心形表白 表达 程序设计

C++代码示范: 心形表白表达

在这个浪漫的情人节,你或许正在思考怎样向你心仪的人表白。除了传统的方式,可能你还可以借助一些现代的工具,来表达自己的情感。本文将介绍一个C++的小程序,让你可以在屏幕上打出一个漂亮的心形图案,来表达自己的爱意。

首先,我们需要一个输出图形的函数。下面是一个可以输出任意形状的函数代码,你可以把它复制到自己的程序中:

void printShape(char shape[][20], int row, int col)
{
  for (int i = 0; i < row; i++)
  {
    for (int j = 0; j < col; j++)
    {
      cout << shape[i][j];
    }
    cout << endl;
  }
}

这个函数需要传入一个二维数组表示要输出的图形,以及图形的行数和列数。接下来,我们来设计心形的图案。一个最简单的心形图案可以是这样:

char shape[][20] = {
  " ***** ",
  "*******",
  "*******",
  " ***** ",
  "  ***  ",
  "  *  "};

这是一个六行20列的字符数组,每个字符代表一个像素点。其中‘*’代表要输出的图案,‘ ’代表背景。把这个数组传入printShape函数,就可以输出一个心形的图案了。

可是,这个图案太单调了,我们需要给它一些色彩。为此,我们需要引入另外一个函数——文本颜色控制。在C++中,可以使用系统提供的控制命令来设置文本的颜色。例如,下面的代码可以设置文本为红色:

cout << "\033[31m";

上面的代码中,\033是ASCII码中的转义字符,用于表示接下来的命令是控制命令。[31m表示控制命令类型,其中“31”代表红色。类似地,我们可以用下面的代码实现其他颜色(部分代码省略):

void setTextColor(int color)
{
  const char* colorArr[] = {
    "\033[0m", // Black
    "\033[31m", // Red
    "\033[32m", // Green
    "\033[33m", // Yellow
    "\033[34m", // Blue
    "\033[35m", // Purple
    "\033[36m", // Cyan
    "\033[37m", // White
  };
  cout << colorArr[color % 8];
}

这个函数接受一个颜色编号,从0开始到7,分别代表黑、红、绿、黄、蓝、紫、青和白色。当然,你也可以根据自己的喜好自定义其他的颜色。

现在,我们已经有了输出图案和文本颜色的两个函数,可以开始设计我们的表白程序了。下面的代码实现了一个简单的心形表白程序:

int main()
{
  char shape[][20] = {
    " ***** ",
    "*******",
    "*******",
    " ***** ",
    "  ***  ",
    "  *  "};
  int color = 0;
  int duration = 100; // 每一段颜色的输出时间(毫秒)
  for (int i = 0; i < 8; i++)
  {
    setTextColor(color++);
    printShape(shape, 6, 20);
    Sleep(duration);
  }
  setTextColor(0);
  cout << "I love you!" << endl;
  return 0;
}

在这个程序中,心形图案逐渐变换颜色,直到变成紫色,然后输出一条爱的宣言。程序中的Sleep函数用于控制每段输出的时间,以达到渐变效果。

将上面的代码复制到你的C++ IDE中,并编译运行,你就可以看到一个漂亮的心形图案了。把程序发送给你心仪的人,希望它能帮助你传递你的情感。

最后,祝你情人节快乐,爱情长存!

  
  

评论区

请求出错了