c语言代码会动的小人(求c语言笑脸可自由上下左右动的代码)

求c语言笑脸可自由上下左右动的代码

挺有意思的一道题目,看一下这样符不符合要求,用wasd控制移动。在VC6运行过了。

#include《stdio.h》
#include《stdlib.h》
#include《conio.h》
int main()
{
//墙从第2行第2列到第15行第15列
int lines = 2 , rows = 2 , i ;
char operate ;
do{
system( “cls“ ) ;  //清屏函数
switch( operate )
{
case ’w’ : //上移
if( lines == 2 )
printf(“不能再往上走了“) ;  //到边界后不能再往上
else
lines — ;  //行减
break ;
case ’s’ : //下移
if( lines == 15 )
printf(“不能再往下走了“) ; //到边界后不能再往下
else
lines ++ ;  //行增
break ;
case ’a’ : //左移
if( rows == 2 )
printf(“不能再往左走了“) ; //到边界后不能再往左
else
rows — ;   //列减
break ;
case ’d’ : //右移
if( rows == 15 )
printf(“不能再往右走了“) ; //到边界后不能再往右
else
rows ++ ;   //列增
break; 
default :
break ;
}
//根据行列值,输出 lines-1 个换行,rows-1 个空格
for( i = 1 ; i 《 lines ; i ++ )
printf( “\n“ ) ;
printf( “%*c“ , rows ,  1 ) ;
} while( operate = getch( ) ) ;
return 0 ;
}

同学,怎么用C语言制作简单的动画啊

因为C的图形处理功能太一般,不便于创作大型动画。制作动画用flash。

flash制作动画:

  1. 打开Flash,点击【文件】→【新建】,在打开的“新建”窗口中选择“Flash文件(ActiveScript 3.0)“,然后点击”确定“创建空白文档。

  2. 点击【插入】→【新建元件】,在打开的”新建元件“窗口中,将名称设置为”运动的小人“,勾选”影片剪辑“,然后点击”确定“按钮。

  3. 点击【文件】→【导入】→【导入到库】,然后在打开的”导入到库“窗口中,选择事先准备好的小人走动姿势图片,全部选择并点击”打开“按钮,导入到库。

  4. 在图层1 的第一帧,把库中的“Result0”拖动到场景中。

  5. 点击“时间轴”上的“新建图层”按钮,创建图层2,然后在图层2的第5帧处,点击【插入】→【关键帧】,把库中的“Result1”拖动到场景中。

  6. 利用同样的原理,将”Result2“、 ”Result3“和”Result4“分别到图层3、图层4和图层5中,对应的帧分别为10、15和20处。  

  7. 最后调整各个图层图像的延续时间。至此,运动的小人影片剪辑制作完成。

  8. 切换至主场景中,使主场景处于活动状态,点击”属性“面板中的”大小“按钮,将场景的大小设置为”800*300“,同时将背景色设置为”黑色“点击”确定“按钮。

  9. 从库中将”运动的小人“影片剪辑拖动到场景左边外边。

  10. 然后在”时间轴“第30帧处,点击【插入】→【时间轴】→【关键帧】,在30帧处插入关键帧,然后将小人从场景的左侧外面拖动到场景右侧外面。至此,整个动画设置完成。

  11. 在1到30帧之间鼠标右击,选择”创建补间动画“。

  12. 最后按下键盘组合键”CTRL+Enter“进行测试。如果感觉小人运动不规律,可适当将1至30帧的距离调整的稍微大一些,直到满意为止。

用C语言画简单的小人

TC2.0里有一个bgidemo.c的图形编程示例程序。
其中有一个演示屏幕贴图的子程序,一个外星人的飞船在屏幕上飞来飞去。
这个程序可以简单地修改一下就可以用于你的需求了。
程序不难看懂。
这个代码我找到了。大概说一下。LZ需要自己去找一下完整的代码研究,这里我只贴出相关的一段。
void PutImageDemo(void)
{
static int r = 20;
static int StartX = 100;
static int StartY = 50;
struct viewporttype vp;
int PauseTime, x, y, ulx, uly, lrx, lry, size, i, width, height, step;
void *Saucer;
MainWindow(“GetImage / PutImage Demonstration“);
getviewsettings( &vp );
/* Draw Saucer */ 下面是用绘画的方式画了一个简单的飞碟。这个飞碟图用于之前复制到内存里备用。
setfillstyle( SOLID_FILL, getmaxcolor() );
fillellipse(StartX, StartY, r, (r/3)+2);
ellipse(StartX, StartY-4, 190, 357, r, r/3);
line(StartX+7, StartY-6, StartX+10, StartY-12);
circle(StartX+10, StartY-12, 2);
line(StartX-7, StartY-6, StartX-10, StartY-12);
circle(StartX-10, StartY-12, 2);
/* Read saucer image */ 这里开始把那个飞碟的小图图复制到一个内存缓冲区里。先计算大小,需要的内存大小。
ulx = StartX-(r+1);
uly = StartY-14;
lrx = StartX+(r+1);
lry = StartY+(r/3)+3;
width = lrx – ulx + 1;
height = lry – uly + 1;
size = imagesize(ulx, uly, lrx, lry);
Saucer = malloc( size ); // 分配内存
getimage(ulx, uly, lrx, lry, Saucer); // 搞到了。
putimage(ulx, uly, Saucer, XOR_PUT); // 这就在原位置上,以异或的方式画一下。用异或的方式绘图,两次绘制后,图像正好就会消失为原来的背景。
但是,LZ的可能这样不行,那就需要复杂一些的绘制了,用人物的黑轮廓图或上背景,得到镂空,然后再把黑背景的角色用or方式绘上。
下面就是随机地绘制了。
/* Plot some “stars“ */
for ( i=0 ; i《1000; ++i )
putpixel(random(MaxX), random(MaxY), random( MaxColors-1 )+1);
x = MaxX / 2;
y = MaxY / 2;
PauseTime = 70;
/* until a key is hit */
while ( !kbhit() ) {
/* Draw the Saucer */
putimage(x, y, Saucer, XOR_PUT); /* draw image */
delay(PauseTime);
putimage(x, y, Saucer, XOR_PUT); /* erase image */
上面的还是两次 xor,显示图片,消除图片。
/* Move Saucer */
step = random( 2*r );
if ((step/2) % 2 != 0 )
step = -1 * step;
x = x + step;
step = random( r );
if ((step/2) % 2 != 0 )
step = -1 * step;
y = y + step;
if (vp.left + x + width – 1 》 vp.right)
x = vp.right-vp.left-width + 1;
else
if (x 《 0)
x = 0;
if (vp.top + y + height – 1 》 vp.bottom)
y = vp.bottom-vp.top-height + 1;
else
if (y 《 0)
y = 0;
}
free( Saucer );
Pause();
}
另外,团IDC网上有许多产品团购,便宜有口碑

哪位大神有c语言做的小人的代码,什么小人都可以,什么叮当猫hellokitty

#include 《stdio.h》
int main() {
  char* s = {“______________$$$$$$$“,
      “_____________$$$$$$$$$“,
      “____________$$$$$$$$$$$“,
      “____________$$$$$$$$$$$“,
      “____________$$$$$$$$$$$“,
      “_____________$$$$$$$$$“,
      “_____$$$$$$_____$$$$$$$$$$“,
      “____$$$$$$$$__$$$$$$_____$$$“,
      “___$$$$$$$$$$$$$$$$_________$“,
      “___$$$$$$$$$$$$$$$$______$__$“,
      “___$$$$$$$$$$$$$$$$_____$$$_$“,
      “___$$$$$$$$$$$__________$$$_$_____$$“,
      “____$$$$$$$$$____________$$_$$$$_$$$$“,
      “______$$$__$$__$$$______________$$$$“,
      “___________$$____$_______________$“,
      “____________$$____$______________$“,
      “_____________$$___$$$__________$$“,
      “_______________$$$_$$$$$$_$$$$$“,
      “________________$$____$$_$$$$$“,
      “_______________$$$$$___$$$$$$$$$$“,
      “_______________$$$$$$$$$$$$$$$$$$$$“,
      “_______________$$_$$$$$$$$$$$$$$__$$“,
      “_______________$$__$$$$$$$$$$$___$_$“,
      “______________$$$__$___$$$______$$$$“,
      “______________$$$_$__________$$_$$$$“,
      “______________$$$$$_________$$$$_$_$“,
      “_______________$$$$__________$$$__$$“,
      “_____$$$$_________$________________$“,
      “___$$$___$$______$$$_____________$$“,
      “__$___$$__$$_____$__$$$_____$$__$$“,
      “_$$____$___$_______$$$$$$$$$$$$$“,
      “_$_____$____$_____$$$$$$__$$$$$$$$“};
  int LENGTH = 32;
  int i = 0;
  for (i = 0; i 《 LENGTH; i++) {
    printf(“%s\n“, s[i]);
  }
}

C语言小题,这个图片里面的小人是输出,怎么用C语言让这个小人从右往左移动呢

其实就是输出4行数据。
前面有若干个空格。所以要想让它移动的话,执行两步
清屏
重新输出4行数据,每行前面空格减少一位。
这样就向左移动了一位了。
循环执行 就是不停向左,类似的 还可以上下右移动。

用C语言制作动画

flash制作动画:
打开Flash,点击【文件】→【新建】,在打开的“新建”窗口中选择“Flash文件(ActiveScript 3.0)“,然后点击”确定“创建空白文档。
点击【插入】→【新建元件】,在打开的”新建元件“窗口中,将名称设置为”运动的小人“,勾选”影片剪辑“,然后点击”确定“按钮。
点击【文件】→【导入】→【导入到库】,然后在打开的”导入到库“窗口中,选择事先准备好的小人走动姿势图片,全部选择并点击”打开“按钮,导入到库。
把库中的“Result0”拖动到场景中。
点击“时间轴”上的“新建图层”按钮,创建图层2,然后在图层2的第5帧处,点击【插入】→【关键帧】,把库中的“Result1”拖动到场景中。
利用同样的原理,将”Result2“、 ”Result3“和”Result4“分别到图层3、图层4和图层5中,对应的帧分别为10、15和20处。
最后调整各个图层图像的延续时间。至此,运动的小人影片剪辑制作完成。
切换至主场景中,使主场景处于活动状态,点击”属性“面板中的”大小“按钮,将场景的大小设置为”800*300“,同时将背景色设置为”黑色“点击”确定“按钮。
从库中将”运动的小人“影片剪辑拖动到场景左边外边。
然后在”时间轴“第30帧处,点击【插入】→【时间轴】→【关键帧】,在30帧处插入关键帧,然后将小人从场景的左侧外面拖动到场景右侧外面。至此,整个动画设置完成。
在1到30帧之间鼠标右击,选择”创建补间动画“。
最后按下键盘组合键”CTRL+Enter“进行测试。如果感觉小人运动不规律,可适当将1至30帧的距离调整的稍微大一些,直到满意为止。

c语言奔跑的小人,是从左往右走的 现在要它从右面往左走,怎么修改 #include
<stdio.</stdio.

把初始值a = 20; while循环改成a 》= 0 最后的a ++ 改成a –就好了

#include《stdio.h》
#include《stdlib.h》
#include《unistd.h》
int main() {
        int a,b;     a=20;//———————
        while (a 》= 0)     { //————————-
                        system(“clear“);
            b=1;
            while (b《=a)         {
                printf(“ “);
                b++;
                }
                printf(“ O\n“);
                b=1;
                while (b《=a)         {
                    printf(“ “);
                    b++;
                }
                    printf(“《H》\n“);
                    b=1;
                    while (b《=a)         {
                        printf(“ “);
                        b++;
                    }
                    printf(“I I\n“);
                    sleep(1);
                    a–; //————————————–
                }
             }