#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
}
伪动态 靠清屏实现动态
#include <stdio.h>
int main()
{ int i, j, k, l, m
char c[3] = "好"
for (i=1i<=5i++) printf("\n")
for (i=1i<=3i++)
{
for (j=1j<=32-2*ij+=2)
printf(" ")
for (k=1k<=4*i+1k+=2)
printf("%s", c)
for (l=1l<=13-4*il+=2)
printf(" ")
for (m=1m<=4*i+1m+=2)
printf("%s", c)
printf("\n")
}
for (i=1i<=3i+=2)
{
for (j=1j<=24+1j+=2)
printf(" ")
for (k=1k<=29k+=2)
printf("%s", c)
printf("\n")
}
for (i=7i>=1i--)
{ //下7行
for (j=1j<=40-2*ij+=2)
printf(" ")
for (k=1k<=4*i+1k+=2)
printf("%s", c)
printf("\n")
}
for (i=1i<=39i+=2)
printf(" ")
printf("%s\n", c)
return 0
}
===========================
#include <stdio.h>
int main()
{ int i, j, k, l, m,n=0
char c[] = "以陕西市区办赛条件为基础承办绝大多数竞技项目比赛,将帆船、皮划艇激流回旋、冲浪、霹雳舞、击剑、场地自行车等场地条件要求特殊和新增设的竞技比赛项目,小项安排在陕西以外的浙江、山东、四川、海南、江苏、天津、河南等省市举办。群众比赛项目中,陕西省承办乒乓球。"
for (i=1i<=5i++) printf("\n")
for (i=1i<=3i++)
{
for (j=1j<=32-2*ij+=2)
printf(" ")
for (k=1k<=4*i+1k+=2)
printf("%c%c", c[n],c[n+1]),n+=2
for (l=1l<=13-4*il+=2)
printf(" ")
for (m=1m<=4*i+1m+=2)
printf("%c%c", c[n],c[n+1]),n+=2
printf("\n")
}
for (i=1i<=3i+=2)
{
for (j=1j<=24+1j+=2)
printf(" ")
for (k=1k<=29k+=2)
printf("%c%c", c[n],c[n+1]),n+=2
printf("\n")
}
for (i=7i>=1i--)
{ //下7行
for (j=1j<=40-2*ij+=2)
printf(" ")
for (k=1k<=4*i+1k+=2)
printf("%c%c", c[n],c[n+1]),n+=2
printf("\n")
}
for (i=1i<=39i+=2)
printf(" ")
printf("%c%c\n", c[n],c[n+1])
return 0
}
运行错误导致c语言爱心只有一半。其实主要有3点原因,1、代码书写比较粗心,有的同学对着书籍敲的,看似一样的代码,实则不一样。比如有一些标点符号写错成中文的。
2、运行时程序出错,可能是你代码中逻辑写错了,比如死循环等,内存非法访问等。
3、不会调试,代码不仅要会写,还要会调试代码,在运行时进行分析,这样才算合格。