如何用C语言循环做一个爱心,要能动的

如题所述

第1个回答  2018-09-07
#include<stdio.h>
#include<string.h>

int get_left_or_right_setp()
{
 static int current = 0;
 static int right = 1;
 
 if (1 == right)
 {
  current++;
 }
 else
 {
  current--;
 }
 
 if (10 == current)
 {
  right = 0;
 }
 else if (0 == current)
 {
  right = 1;
 }
 
 return current;
}

void kongge(int step_cnt)
{
 int i = 0;
 
 for (i = 0; i < step_cnt; i++)
 {
  printf("  ");
 }
}

void clear_screen()
{
 //linux选这个
 system("clear");
 
 //win选这个
 //system("cls");
}

void printf_love()
{
 int step_cnt = get_left_or_right_setp();
 
    kongge(step_cnt); printf("        **           **        \n");
    kongge(step_cnt); printf("    *       *     *       *    \n");
    kongge(step_cnt); printf("  *            *            *  \n");
    kongge(step_cnt); printf(" *                           * \n");
    kongge(step_cnt); printf(" *                           * \n");
    kongge(step_cnt); printf(" *                           * \n");
    kongge(step_cnt); printf(" *                           * \n");
    kongge(step_cnt); printf("  *                         *  \n");
    kongge(step_cnt); printf("   *                       *   \n");
    kongge(step_cnt); printf("    *                     *    \n");
    kongge(step_cnt); printf("      *                 *      \n");
    kongge(step_cnt); printf("        *             *        \n");
    kongge(step_cnt); printf("          *         *          \n");
    kongge(step_cnt); printf("             *   *             \n");
    kongge(step_cnt); printf("               *               \n");
}

int main(void)

 while (1)
 {
  clear_screen();
  printf_love();
  sleep(1);
 }
 
 return 0;
}

伪动态 靠清屏实现动态

本回答被网友采纳
第2个回答  2018-09-07
延时输出
相似回答