求!
就是先输入你走的次数,再输入你每次走的方向和距离
具体输入如下
2
E 6
N 4
实现代码过程中发现不会交替给两个数组赋值,就是如何让输入的E给第一个数组,输入的6给第二个数组
大致思路是想分为南北和东西两个部分,计算南北方向总共移动矢量和,计算东西方向总共移动的矢量和,然后用勾股定理求距离
具体错误代码如下(编译没有问题,运行起来后发现a数组一直是空的,不清楚什么原因
# include <stdio.h>
# include <math.h>
int main(void)
{
char a[100];
double b[100];
double d, x, y;
int i=0, n;
scanf("%d", &n); //走了几次
char p,c[100];
while((p=getchar()) == '\n')
continue;
while((a[i]=getchar()) != '\n'&&(scanf("%lf",&b[i])) != '\n')
{
while((c[i]=getchar()) == '\n')
continue;
i++;
if((i+1) == n)
break;
}
i=0;
while(i<n)
{
if(a[i] = 'E')
x += b[i];
if(a[i] = 'W')
x -= b[i];
if(a[i] = 'N')
y += b[i];
if(a[i] = 'S')
y -= b[i];
i++;
}
d = sqrt((x*x) + (y*y));
printf("%.2f", d);
return 0;
}