打印心形

#include <stdio.h>
#include <stdlib.h>

int isEven(int number);
void printLovingHeart(int number,int left);	//打印爱心
void printUpLovingHeart(int number,int left);	//打印爱心的上半部分
void printDownTri(int number, int left);	//打印边长为number的向下正三角形,左边空left列
void printLovingHeartRow(int number, int row, int left);
void printRow(int number, int row, int left);

int main(){
	int number;
	while (fflush(stdin), scanf("%d", &number) != EOF){
		if (isEven(number))
			printLovingHeart(number,0);
		else
			printf("Please input a even number.\n");
	}
	system("pause");
	return 0;
}

int isEven(int number){
	if (number % 2 == 0)
		return 1;
	else
		return 0;
}

void printDownTri(int number, int left){
	for (int i = number; i > 0; --i){	//i为当前行*数
		printRow(number, i, left);
		printf("\n");
	}
}

void printUpLovingHeart(int number,int left){
	for (int i = 2; i < number/2; ++i)	//i为当前行
		printLovingHeartRow(number, i, left);
}

void printLovingHeartRow(int number, int row, int left){
		printRow(number/2-1,row,left+1);
		printRow(number/2-1,row,number/2-row+2);
		printf("\n");
}

void printRow(int number, int row, int left){
	for (int j = 0; j < left; ++j)	//打印空列
		printf(" ");
	for (int j = 0; j < number - row; ++j)	//打印左方空白
		printf(" ");
	for (int j = 0; j < row; ++j)	//打印三角形的一行
		printf("* ");
	printf("\b");
}

void printLovingHeart(int number,int left){
	printUpLovingHeart(number,left);
	printDownTri(number,left);
}

  

时间: 2024-12-17 23:12:10

打印心形的相关文章

打印心形---print 的基础使用

#!/bin/usr/env python#coding=utf-8'''用学习到的print语句,完成如下图形的打印工作打印心形'''print " *** *** "print " ********* *********"print "************ ************"print "************* *************"print "************** *******

c++打印心形

用c++打印一个心形的图案: 1 #include<iostream> 2 #include<cmath> 3 using namespace std; 4 int main() 5 { 6     float x, y; 7     for (y = 1.5f; y >-1.5f; y -= 0.1f) 8     { 9         for (x = -1.5f; x <1.5f; x += 0.05f)10         {11             fl

知乎上的文章, 用 C 打印心形

//normal #include <stdio.h> int main() { for (float y = 1.5f; y > -1.5f; y -= 0.1f) { for (float x = -1.5f; x < 1.5f; x += 0.05f) { float a = x * x + y * y - 1; putchar(a * a * a - x * x * y * y * y <= 0.0f ? '*' : ' '); } putchar('\n'); }

C语言打印心形

#include <stdio.h> int main() { for (float y = 1.5f; y > -1.5f; y -= 0.1f) { for (float x = -1.5f; x < 1.5f; x += 0.05f) { float a = x * x + y * y - 1; putchar(a * a * a - x * x * y * y * y <= 0.0f ? '*' : ' '); } putchar('\n'); }} ********

一个C语言实现的心形闪烁

前期准备: 1.打印出心形需要使用 \3 进行输出 2.想更改终端(命令行)同一个位置的输出字符,需要使用 \b 退格将光标回退,之后写入空格,再回退即可 3.想要闪烁的话需要调用系统进程休眠函数,在windows下使用Sleep(ms);函数,需包含<windows.h>头文件 4.具体逻辑看代码 1 #include<stdio.h> 2 #include<windows.h> 3 int main() 4 { 5 int a=100; 6 while(a) 7 {

心形java2019/10/17

在网上无意中看到这个代码,学习了一下心形函数的知识:http://mathworld.wolfram.com/HeartCurve.html package dada; /** * 了解Heart Curve函数中的 一种:(X的平方+Y的平方-1)-X的平方乘以Y的三次方 */ public class HeartTest { public static void main(String[] args) { //i对应X j对应Y for (float i = 1.5f; i > -1.5f;

心形动画

<!doctype html><html><head><meta charset="utf-8"><title>心形动画代码</title><script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script><style>body { background:black;}.heart

[控件] 心形加载的view

心形加载的view 效果: 素材图片: 源码: StarView.h 与 StarView.m // // StarView.h // Star // // Created by XianMingYou on 15/3/13. // Copyright (c) 2015年 XianMingYou. All rights reserved. // #import <UIKit/UIKit.h> @interface StarView : UIView @property (nonatomic,

超多经典 canvas 实例,动态离子背景、移动炫彩小球、贪吃蛇、坦克大战、是男人就下100层、心形文字等等等

超多经典 canvas 实例 普及:<canvas> 元素用于在网页上绘制图形.这是一个图形容器,您可以控制其每一像素,必须使用脚本来绘制图形. 注意:IE 8 以及更早的版本不支持 <canvas> 元素. 贴士:全部例子都分享在我的 GayHub - https://github.com/bxm0927/canvas-special 尤雨溪个人主页炫彩三角纽带效果,点击还可变换 GitHub源码 . Demo演示 知乎登录注册页动态离子背景效果 GitHub源码 . Demo演