一道C语言关于距离的期末题及答案

距离多远:

小明站在一个大广场的中点,从该位置开始,他可以从东(E)、南(S)、西(W)、北

(N)四个方向任选一个方向走一定的距离,之后,他又可以从东、南、西、北四个方向任选一个方

向走一定的距离,如此进行,小明一共走了 n 段距离。现要求编程实

现,由键盘输入 n 及 n 次行走的方向和距离,计算输出最终小明所在

位置距起点的直线距离(结果保留两位小数)。

答案:

#include <stdio.h>

#include <stdlib.h>

#include "math.h"

int main()

{

double x=0, y=0, t;

int n;

char s[10];

scanf("%d", &n);

while(n--)

{

scanf("%s%lf", s, &t);

switch(s[0])

{

case 'E':

x+=t;

break;

case 'W':

x-=t;

break;

case 'N':

y+=t;

break;

case 'S':

y-=t;

break;

}

}

printf("%.2f", sqrt(xx+y y));

}

相关推荐
likerhood几秒前
java中的return this、链式编程和Builder模式
java·开发语言
程序猿编码7 分钟前
给Linux程序穿“隐身衣”——ELF运行时加密器全解析(C/C++代码实现)
linux·c语言·c++·网络安全·elf·内存安全
Goway_Hui20 分钟前
【ReactNative鸿蒙化-三方库使用与C-API集成】
c语言·react native·harmonyos
原来是猿30 分钟前
Linux线程同步与互斥(三):POSIX信号量与环形队列生产者消费者模型
linux·运维·服务器·开发语言
未来转换34 分钟前
基于A2A协议的生产应用实践指南(Java)
java·开发语言·算法·agent
Rust语言中文社区36 分钟前
【Rust日报】Clone:像进程一样 fork 虚拟机的 Rust KVM VMM
开发语言·后端·rust
求知也求真佳40 分钟前
S02|工具使用:让 Agent 真正会干活,添加工具
开发语言·agent
Dwzun43 分钟前
基于Java+SpringBoot+Vue的校园二手物品置换系统设计与实现【附源码+文档+部署视频+讲解】
java·开发语言·spring boot
charlie1145141911 小时前
嵌入式Linux驱动开发(3)——内核模块机制 - Linux 的插件系统
linux·运维·开发语言·驱动开发·嵌入式硬件·学习
C、空白格1 小时前
Java集成Vosk实现离线语音识别
java·开发语言·语音识别