写在前面
爱心,通常象征着爱、关怀与奉献。爱心通常被设计成两个相互对称的半圆形或者曲线连接而成的心形图案,代表着人类情感中的深情厚意和无私关爱。本文将用C语言绘制一个爱心图案,简单且实用!
爱心代码
#include<stdio.h> #include<Windows.h> //写字 char love[20][43] = { "111111111111111111111111111111111111111111", "111111111111110000111111100001000111111111", "110000000000000000011111100011000111111111", "110000111001110001111111000110001111111111", "111100010000110000111111100011000000000011", "111100001000100011111110000100011111100011", "100000000000000000001110000100011111000111", "100000000000000000011100000000110001000111", "100011100011111000110000000000110001111111", "111011100011111100111111000111110001111111", "111000000000000000111111000110000000001111", "111111000111111111111111000110000000000111", "111110001111111111111111000100010001000111", "111000000000000001111111000000010001100011", "111000000011000011111111000000110001100001", "110001110000000111111111000001110001110111", "100011111000011111111111000111110001111111", "111110000000000000011111000111000001111111", "111000000111110000011111000111000011111111", "111111111111111111111111111111111111111111" }; void gotoxy(int x, int y) { HANDLE hout = GetStdHandle(STD_OUTPUT_HANDLE); COORD pos = { x,y }; SetConsoleCursorPosition(hout, pos); } void SetColor(int color) { if (color == 0)color = 0x04; HANDLE hCon = GetStdHandle(STD_OUTPUT_HANDLE); SetConsoleTextAttribute(hCon, color); } ……
这段C语言程序首先导入了一些必要的头文件,stdio.h用于基本的输入输出操作,Windows.h则包含了Windows API函数的声明,主要用于控制命令行窗口的位置、颜色等。
1. char love[20][43]定义了一个字符数组,存储了爱心形状的ASCII图案,其中'1'代表空格,非'1'的位置打印'*'来构成爱心图像。
2. gotoxy(int x, int y)是一个自定义函数,用于将光标定位到命令行窗口的指定位置(x, y)。
3. SetColor(int color)也是一个自定义函数,用于设置控制台文本的颜色。
4. 在main()函数中:
- 首先通过system("color 0c")设置了命令行窗口的前景色为青色。
- 然后打印出一行诗词。
5. 获取并调整命令行窗口在屏幕上的位置,使其居中显示。
6. 接下来,程序使用一个类似心形函数(Cartesian坐标系下的心形曲线)生成动态效果。循环遍历x和y轴,根据心形函数的值决定在当前位置打印空格还是星号,并且每次循环之间有150毫秒的暂停,形成动态绘制心形的效果。
7. 绘制完动态心形之后,程序开始打印预先定义好的静态ASCII爱心图案。利用gotoxy()函数逐个定位字符位置,然后根据love数组的内容决定打印空格或彩色星号。
8. 最后,程序返回0表示正常结束。
整体而言,该程序结合了数学函数图形绘制以及ASCII艺术,在命令行窗口上实现了一个静态爱心图形。
写在最后
我是一只有趣的兔子,感谢你的喜欢!