#include <stdio.h>
int main()
{
int i, j, k, l, m;
char c=3; //ASCII 码里面 3 就是一个字符小爱心
for (i=1; i<=5; i++) printf(""); //开头空出 5 行
for (i=1; i<=3; i++) { //前 3 行中间有空隙分开来写
for (j=1; j<=32-2*i; j++) printf(" "); //左边的空格,每下一行左边的空格比上一行少 2 个 //8*n-2*i
for (k=1; k<=4*i+1; k++) printf("%c", c);//输出左半部分字符小爱心
for (l=1; l<=13-4*i; l++) printf(" "); //中间的空格,每下一行的空格比上一行少 4 个
for (m=1; m<=4*i+1; m++) printf("%c", c);//输出右半部分字符小爱心
printf(""); //每一行输出完毕换行
}
for (i=1; i<=3; i++) { //下 3 行中间没有空格
for (j=1; j<=24+1; j++) printf(" "); //左边的空格 //8*(n-1)+1
for (k=1; k<=29; k++) printf("%c", c);//输出字符小爱心
printf(""); //每一行输出完毕换行
}
for (i=7; i>=1; i--) { //下 7 行
for (j=1; j<=40-2*i; j++) printf(" "); //左边的空格,每下一行左边的空格比上一行少 2 个//8*(n+1)-2*i
for (k=1; k<=4*i-1; k++) printf("%c", c);//每下一行的字符小爱心比上一行少 4 个(这个循环是 i--)
printf(""); //每一行输出完毕换行
}
for (i=1; i<=39; i++) printf(" "); //最后一行左边的空格
printf("%c", c); //最后一个字符小爱心
for (i=1; i<=5; i++) printf(""); //最后空出 5 行
return 0;
}
评论0
最新资源