今天,我用简短的代码教大家如何展示一个会移动的小人。
①函数学习
1,大家知道,用普通的cin,scanf需要按回车才能结束读入,有个函数,不用按回车
那就是———我们亲爱的————_getch(); 函数。
他的头文件是<conio.h>
函数特点:从控制台读取一个字符,但不显示在屏幕上
函数原型:int getch(void)
我们可以这样用:char c=getch();
学废了吗?
2,我们在动画中需要反复清屏,需要用到
我们亲爱的————system("cls"); 函数。
他的头文件是<processs.h>
函数特点:清空控制台
学废了吗?
②正文
思路:我们打印小人时,可以用它前面的空格数量来左右移动小人。
每次输入时我们都要刷新当前画面
如果往左走,空格数量减一
如果往右走,空格数量减一
那么,就出现下面代码:
#include<process.h>
#include<iostream>
#include<conio.h>
using namespace std;
int main(){
int s=0;//空格个数
while(true){//死循环
char c=getch();//获取字符
if(c!='\0')system("cls");//如果有新的操作就清屏
switch(c){//没学过的没办法
case 'a'://向左走
s--;//空格减少
break;
case 'd'://向右走
s++;//空格增加
break;
}
for(int i=1;i<=s;i++){//输出小人前面的空格
cout<<" ";
}
cout<<"#\n";//小人
for(int i=1;i<=s;i++){
cout<<" ";
}
cout<<"#\n";
for(int i=1;i<=30;i++)cout<<"*";//地板
}
return 0;
}
完结——~:)