#include
int main()
{
int t1,t2,turnorder;/*t1表示前一时间戳记、t2表示后一时间戳记、turnorder表示转向命令*/
int x=0,y=0;//卡车初始位置坐标。
int flag;//卡车转向标识 : 1表示向北,2表示向西,3表示向南,4表示向东。
flag=1 ;
t1=0;
printf("请输入时间戳记及相应命令,并以回车键结束:\n");
scanf("%d%d",&t2,&turnorder);
while(1)
{
switch(flag)
{
case 1:y+=10*(t2-t1);
flag=(turnorder==1)?2:4; t1=t2;break;
case 2:x-=10*( t2-t1 );
flag=(turnorder==1)?3:1; t1=t2;break;
case 3:y-=10*( t2-t1 );
flag=(turnorder==1)?4:2; t1=t2;break;
case 4:x+=0*(t2-t1);
flag=(turnorder==1)?1:3; t1=t2;break;
default:break;
}
if(turnorder==3) break;
scanf("%d%d",&t2,&turnorder);
}
printf("卡车的最终位置坐标为:(%d,%d)\n",x,y);
return 0;
}
已通过测试,请验证!