① c语言中怎么控制小人的移动
每次循环的时候,检测按键,如果有按键按下,就改变小人的坐标,下次重绘的时候,使用新的坐标,就相当于小人运动了
② C语言控制上下左右的函数是什么
希望这个能对你有帮助:#include <stdio.h>
#include <conio.h>int main(void){
int c ;
while(1){
c = getch();
if(c==0) c=getch(); // getch在遇到方向键时会返回0 再使用getch便会返回扫描码
if( c == 72 )
printf("UP\n"); // 我帮你把上下左右数据调出来 你用的时候define成 UP来使用这个值就可以了
if ( c == 80)
printf("DOWN\n");
if ( c == 75)
printf("LEFT\n");
if ( c == 77)
printf("RIGHT\n");
if(c == 113) //按q退出
break;
}
return 0;
}
③ 请问C++或Java能控制机器人运动吗吗
能肯定是能。不过他们的控制还是依赖于更底层的单片机以及电路结构。也就是说,你可以用java实现一个类似人工智能的功能,给出一个指令。例如:利用java,从摄像头采集数据做智能分析,然后计算出一个机械手臂的运动轨迹。然而,java的功能也就到此了。这个机械手臂如何按照指定的轨迹运动呢?它需要一些马达来控制关节的旋转。这些马达都是由单片机控制的。单片机可以由C语言编程,或者汇编语言编程。
java是大脑。而底层的C语言你可以认为是小脑和肌肉神经。
④ C语言中怎么用键盘控制界面的物体移动
这里有个用C语言控制屏幕上小飞机运动的代码,供参考:
#include<stdio.h>
#include<Windows.h>
#include<time.h>
#include"stdio.h"
#include
<conio.h>
#define
N
35
int
scr[22][N]={0},pl=9,width=24,speed=3,density=30;
int
score=0,death=0;
void
print(int
a[][N])
{
system("cls");
int
i,j;
for(i=0;i<22;i++)
{
a[i][width-1]=4;
for(j=0;j<width;j++)
{
if(a[i][j]==0)
printf("
");
if(a[i][j]==1)
printf("\5");
if(a[i][j]==2)
printf(".");
if(a[i][j]==3)
printf("\3");
if(a[i][j]==4)
printf("|");
if(i==0
&&
j==width-1)
printf("score:%d",score);
if(i==1
&&
j==width-1)
printf("death:%d",death);
if(i==2
&&
j==width-1)
printf("setting:ESC");
}
printf("\n");
}
}
void
movebul(int
a[][N])
{
int
i,j=0;
for(i=0;i<22;i++)
{
if(i==0
&&
a[i][j]==2)a[i][j]==0;
if(a[i][j]==2)
{
if(a[i-1][j]==3)
score+=10,printf("\7");
a[i][j]=0,a[i-1][j]=2;
}
}
}
void
movepla(int
a[][N])
{
int
i,j;
for(i=21;i>=0;i--)
for(j=0;j<width;j++)
{
if(i==21&&a[i][j]==3)
a[i][j]=0;
if(a[i][j]==3)a[i][j]=0,a[i+1][j]=3;
}
if(a[20][pl]==3&&a[21][pl]==1)death++;
}
void
setting(void)
{
int
sw=0,i,j;
system("cls");
do
{
sw=0;
printf("\n游戏界面的大小:1.大2.小>>");
switch(getchar())
{
case'1':width=34;break;
case'2':width=24;;break;
default:printf("\n错误,请重新选择...\n");
sw=1;
}
}while(sw);
do
{
sw=0;
printf("\n请选择敌机密度:1.大2.中3.小>>");
switch(getchar())
{
case'0':density=10;break;
case'1':density=20;break;
case'2':density=30;break;
case'3':density=40;break;
default:printf("\n错误,请重新选择...\n");
sw=1;
}
}while(sw);
do
{
sw=0;
printf("\n敌机的飞行速度:1.快2.中3.慢>>");
switch(getchar())
{
case'1':speed=2;break;
case'2':speed=3;break;
case'3':speed=4;break;
default:printf("\n错误,请重新选择...\n");
sw=1;
}
}while(sw);
for(i=0;i<22;i++)
for(j=0;j<45;j++)
scr[i][j]=0;
scr[21][pl=9]=1;
printf("\n按任意键保存...");
getchar();
}
void
menu(void)
{
printf("说明:按AD控制我机左右飞行,W发射子弹\n设置:请按Esc\n开始游戏:任意键");
if(getchar()==27)
setting();
}
void
main()
{
menu();
int
i=0,j=0;
scr[21][pl]=1;
scr[0][5]=3;
while(1)
{
if(kbhit())
switch(getch())
{
case'a':
case'A':if(pl>0)
scr[21][pl]=0,scr[21][--pl]=1;break;
case'd':
case'D':if(pl<width-2)
scr[21][pl]=0,scr[21][++pl]=1;break;
case'w':
case'W':scr[20][pl]=2;break;
case
27:setting();break;
}
if(++j%density==0)
{
j=0;
srand(time(NULL));
scr[0][rand()%width]=3;
}
if(++i%speed==0)
movepla(scr);
movebul(scr);
print(scr);
if(i==30000)
i=0;
}
}
⑤ 怎么用C语言让一个字符动起来,可以控制上下左右
//简单编了一个小程序,是这样不?
#include"stdio.h"
#include"conio.h"
#include"stdlib.h"
intmain()
{
charc;
intx,y,i,j;
x=0;
y=0;
printf("*");
while(1)
{
if((c=getch())<0)c=getch();
switch(c)
{
case72:
if(y>0)y=y-1;
break;
case75:
if(x>0)x=x-1;
break;
case77:
if(x<79)x=x+1;
break;
case80:
if(y<24)y=y+1;
break;
default:
break;
}
system("cls");
for(j=0;j<y;j++)
printf(" ");
for(i=0;i<x;i++)
printf("");
printf("*");
//printf("%d,%d",x,y);
}
}
⑥ C语言的9种控制语句是什么啊
C语言9种控制语句
①if( )~else 条件语句
②for( )~ 循环语句
③while( )~ 循环语句
④do~while( ) 循环语句
⑤continue 结束本次循环语句
⑥break 中止执行switch或循环语句
⑦switch 多分支选择语句
⑧goto 转向语句
⑨return 从函数返回语句
(6)c语言控制手臂扩展阅读
基本特性
1、高级语言:它是把高级语言的基本结构和语句与低级语言的实用性结合起来的工作单元。
2、结构式语言:结构式语言的显着特点是代码及数据的分隔化,即程序的各个部分除了必要的信息交流外彼此独立。这种结构化方式可使程序层次清晰,便于使用、维护以及调试。C 语言是以函数形式提供给用户的,这些函数可方便的调用,并具有多种循环、条件语句控制程序流向,从而使程序完全结构化。
3、代码级别的跨平台:由于标准的存在,使得几乎同样的C代码可用于多种操作系统,如Windows、DOS、UNIX等等;也适用于多种机型。C语言对编写需要进行硬件操作的场合,优于其它高级语言。
4、使用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素。C++在这方面做了改进,在保留了指针操作的同时又增强了安全性,受到了一些用户的支持,但是,由于这些改进增加语言的复杂度,也为另一部分所诟病。Java则吸取了C++的教训,取消了指针操作,也取消了C++改进中一些备受争议的地方,在安全性和适合性方面均取得良好的效果,但其本身解释在虚拟机中运行,运行效率低于C++/C。一般而言,C,C++,java被视为同一系的语言,它们长期占据着程序使用榜的前三名。
参考资料
C语言--网络
⑦ 急求用C语言编一个控制东西能上下,左右,前后运动的程序
你的芯片能跑起来了吗?如果能运行Hello world的话。这个就不是什么困难的事情了。几天就搞定了
⑧ 乐高机器人用的什么编程语言
乐高机器人编程主要用的编程语言是ROBOLAB。
ROBOLAB是乐高玩具公司于2006年8月推出的广受欢迎的新一代玩具机器人系统,该系统包括一个由NI开发、且基于LabVIEW平台的全新推放式图形化编程环境,是目前NXT编程广泛应用的软件。ROBOLAB语言通过简单、直观、易学原则建立编程环境。ROBOLA基于图形化语言的编程环境,适合各个年龄段的用户使用,程序的编写方式类似于做逻辑表达,不过是全部图形化的在基于ROBOLAB编程环境进行程序编写,需要清醒的头脑,清晰的逻辑。程序编写完毕后通过乐高(LEGO)红外传感器传送至机器人(RCX)的记忆体中。ROBOLAB的出现原本旨在为相关产品做软件支持,经过多年的发展,已经成为青少年进行机器人竞赛的必备编程工具。【学少儿编程可以提高孩子逻辑思维、专注力!】
想要了解更多少儿编程的信息,推荐咨询童程童美。“童程童美”上线于2018年,是由童程童美独立开发的专有可视化在线少儿编程教育平台,针对6—18岁青少儿提供线上小班直播授课。课程覆盖Scratch图形界面编程、Python人工智能编程、NOI系列课程三大课程体系。依托故事化、可视化、游戏化的学习方式,采用自主研发的云平台编程环境,让学生在云端操作即可运行出结果。【童程童美少儿编程体验课,点击可免费报名试听】
⑨ C语言中怎么用键盘控制界面的物体移动
这里有个用C语言控制屏幕上小飞机运动的代码,供参考:
#include<stdio.h>
#include<Windows.h>
#include<time.h>
#include"stdio.h"
#include <conio.h>
#define N 35
int scr[22][N]={0},pl=9,width=24,speed=3,density=30;
int score=0,death=0;
void print(int a[][N])
{
system("cls");
int i,j;
for(i=0;i<22;i++)
{
a[i][width-1]=4;
for(j=0;j<width;j++)
{
if(a[i][j]==0) printf(" ");
if(a[i][j]==1) printf("\5");
if(a[i][j]==2) printf(".");
if(a[i][j]==3) printf("\3");
if(a[i][j]==4) printf("|");
if(i==0 && j==width-1) printf("score:%d",score);
if(i==1 && j==width-1) printf("death:%d",death);
if(i==2 && j==width-1) printf("setting:ESC");
}
printf("\n");
}
}
void movebul(int a[][N])
{
int i,j=0;
for(i=0;i<22;i++)
{
if(i==0 && a[i][j]==2)a[i][j]==0;
if(a[i][j]==2)
{
if(a[i-1][j]==3) score+=10,printf("\7");
a[i][j]=0,a[i-1][j]=2;
}
}
}
void movepla(int a[][N])
{
int i,j;
for(i=21;i>=0;i--)
for(j=0;j<width;j++)
{
if(i==21&&a[i][j]==3) a[i][j]=0;
if(a[i][j]==3)a[i][j]=0,a[i+1][j]=3;
}
if(a[20][pl]==3&&a[21][pl]==1)death++;
}
void setting(void)
{
int sw=0,i,j;
system("cls");
do
{
sw=0;
printf("\n游戏界面的大小:1.大2.小>>");
switch(getchar())
{
case'1':width=34;break;
case'2':width=24;;break;
default:printf("\n错误,请重新选择...\n");
sw=1;
}
}while(sw);
do
{
sw=0;
printf("\n请选择敌机密度:1.大2.中3.小>>");
switch(getchar())
{
case'0':density=10;break;
case'1':density=20;break;
case'2':density=30;break;
case'3':density=40;break;
default:printf("\n错误,请重新选择...\n");
sw=1;
}
}while(sw);
do
{
sw=0;
printf("\n敌机的飞行速度:1.快2.中3.慢>>");
switch(getchar())
{
case'1':speed=2;break;
case'2':speed=3;break;
case'3':speed=4;break;
default:printf("\n错误,请重新选择...\n");
sw=1;
}
}while(sw);
for(i=0;i<22;i++)
for(j=0;j<45;j++)
scr[i][j]=0;
scr[21][pl=9]=1;
printf("\n按任意键保存...");
getchar();
}
void menu(void)
{
printf("说明:按AD控制我机左右飞行,W发射子弹\n设置:请按Esc\n开始游戏:任意键");
if(getchar()==27) setting();
}
void main()
{
menu();
int i=0,j=0;
scr[21][pl]=1;
scr[0][5]=3;
while(1)
{
if(kbhit())
switch(getch())
{
case'a':
case'A':if(pl>0)
scr[21][pl]=0,scr[21][--pl]=1;break;
case'd':
case'D':if(pl<width-2)
scr[21][pl]=0,scr[21][++pl]=1;break;
case'w':
case'W':scr[20][pl]=2;break;
case 27:setting();break;
}
if(++j%density==0)
{
j=0;
srand(time(NULL));
scr[0][rand()%width]=3;
}
if(++i%speed==0) movepla(scr);
movebul(scr);
print(scr);
if(i==30000) i=0;
}
}
⑩ 我用51单片机控制一个机械手臂搬运物料,求问用一个独立按键,采用外部中断的方法如何实现暂停,开始。
刚刚为你编写的
已经在单片机上测试成功
原理是,按键第一次被按下后,nn为1,程序一直在中断里面死循环
这样其它指令就暂停了,而中断的原理既是,从哪断开的,就回到那里
在这个死循环中,检测按键时候又被按下
按键又按下后,nn变为0,死循环的条件不满足