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

 我来答
种田的码农
推荐于2018-04-05 · 超过58用户采纳过TA的回答
知道小有建树答主
回答量:71
采纳率:0%
帮助的人:87.2万
展开全部

挺有意思的一道题目,看一下这样符不符合要求,用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 ;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式