21xrx.com
2024-11-25 05:06:29 Monday
登录
文章检索 我的文章 写文章
如何在C++中输出爱心?
2023-06-30 13:54:52 深夜i     --     --
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++中输出爱心的两种方法,大家可以根据自己的需求进行选择。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复