21xrx.com
2025-03-24 18:20:12 Monday
文章检索 我的文章 写文章
如何在C++中输出爱心?
2023-06-30 13:54:52 深夜i     34     0
C++ 输出 爱心

在程序设计语言C++中,输出一颗爱心非常简单。下面我将介绍两种实现方法:

方法1:利用ASCII码输出

ASCII码是计算机中用于表示字符的一种编码方式。借助ASCII码中特殊字符的形状,我们可以输出一个爱心。

代码如下:

#include <iostream>
using namespace std;
int main()
{
  cout << "  * * * *    * * * *\n";
  cout << " *     *  *     *\n";
  cout << "*      * *      *\n";
  cout << "*      **      *\n";
  cout << " *            *\n";
  cout << "  *          *\n";
  cout << "   *        *\n";
  cout << "    *      *\n";
  cout << "     *    *\n";
  cout << "      *  *\n";
  cout << "       *\n";
  return 0;
}

运行效果:

* * * *    * * * *
*     *  *     *
*      * *      *
*      **      *
*            *
  *          *
   *        *
    *      *
     *    *
      *  *
       *

方法2:利用图形学库输出

C++中提供了很多优秀的图形学库,如OpenGL、OpenCV等。这里以OpenGL为例,我们可以使用其内置的函数绘制爱心。

代码如下:

#include <GL/glut.h>
#include <math.h>
const GLfloat PI = 3.145926f;
void display()
{
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_LINES);
glColor3f(1.0f, 0.0f, 0.0f);
for (GLfloat angle = 0.0f; angle <= 2 * PI; angle += 0.01f)
{
GLfloat x = 16 * sin(angle) * sin(angle) * sin(angle);
GLfloat y = 13 * cos(angle) - 5 * cos(2 * angle)
- 2 * cos(3 * angle) - cos(4 * angle);
glVertex2f(x, y);
}
glEnd();
glFlush();
}
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA);
glutInitWindowSize(400, 400);
glutInitWindowPosition(100, 100);
glutCreateWindow("Love");
glClearColor(1.0f, 1.0f, 1.0f, 1.0f);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}

运行效果:

![](https://img-blog.csdnimg.cn/20210701093829720.png)

以上就是在C++中输出爱心的两种方法,大家可以根据自己的需求进行选择。

  
  

评论区