C语言编程:一个运动中的笑脸(C语言高手进)
今天在网上看到一个帖子说这个源文件能让一个笑脸移动,但运行起来并没有动,就一个笑脸定在那儿,光标在下面闪。我估计是光标的语句出了问题,但又不知道怎么解决,请C语言高手帮忙...
今天在网上看到一个帖子说这个源文件能让一个笑脸移动,但运行起来并没有动,就一个笑脸定在那儿,光标在下面闪。我估计是光标的语句出了问题,但又不知道怎么解决,请C语言高手帮忙看下。下面是源程序:
#include<stdio.h>
#include<conio.h>
struct move_point
{
int x,y;
int xv,yv;
}man;
int main()
{
gotoxy(man.x,man.y);
printf(" ");
man.x+=man.xv;
man.y+=man.yv;
gotoxy(man.x,man.y);
printf("%c\b", 2);
getch();
return 0;
} 展开
#include<stdio.h>
#include<conio.h>
struct move_point
{
int x,y;
int xv,yv;
}man;
int main()
{
gotoxy(man.x,man.y);
printf(" ");
man.x+=man.xv;
man.y+=man.yv;
gotoxy(man.x,man.y);
printf("%c\b", 2);
getch();
return 0;
} 展开
展开全部
原因比较简单,因为只打印了一个笑脸,所以它不会动
#include<stdio.h>
#include<conio.h>
struct move_point
{
int x,y;
int xv,yv;
}man; /*定义了一个叫man的结构体变量,x,y,xv,yv默认是0!如果要让它动的话,至少要给xv,yv中一个赋值*/
int main()
{
/**************************************************/
gotoxy(man.x,man.y); /*移动坐标到man.x,man.y*/
printf(" "); /*打印空格(用于盖住原来的字符)*/
man.x+=man.xv;
man.y+=man.yv; /*这两句用来移动光标前的计算*/
gotoxy(man.x,man.y); /*移动光标*/
printf("%c\b", 2); /*打印笑脸(ASCII码2)*/
/**************************************************/
getch(); /*暂停下*/
return 0;
}
想要让笑脸动,除了上面的赋值,还要把上面的一大堆星号之间的部分用循环套起来,再加上延迟的语句(防止刷新太快,看不清)就可以了.
#include<stdio.h>
#include<conio.h>
struct move_point
{
int x,y;
int xv,yv;
}man; /*定义了一个叫man的结构体变量,x,y,xv,yv默认是0!如果要让它动的话,至少要给xv,yv中一个赋值*/
int main()
{
/**************************************************/
gotoxy(man.x,man.y); /*移动坐标到man.x,man.y*/
printf(" "); /*打印空格(用于盖住原来的字符)*/
man.x+=man.xv;
man.y+=man.yv; /*这两句用来移动光标前的计算*/
gotoxy(man.x,man.y); /*移动光标*/
printf("%c\b", 2); /*打印笑脸(ASCII码2)*/
/**************************************************/
getch(); /*暂停下*/
return 0;
}
想要让笑脸动,除了上面的赋值,还要把上面的一大堆星号之间的部分用循环套起来,再加上延迟的语句(防止刷新太快,看不清)就可以了.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
编译发生错误,gotoxy()是什么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询