c语言将位置数据从DMSl类型准换为10进制类型函数
时间: 2023-10-09 21:04:20 浏览: 55
下面是一个将DMS(度分秒)格式的位置数据转换为十进制格式的函数示例:
```c
double convertDMStoDecimal(int degrees, int minutes, double seconds, char direction) {
double decimal;
decimal = degrees + ((double)minutes / 60.0) + (seconds / 3600.0);
if (direction == 'S' || direction == 'W') {
decimal *= -1;
}
return decimal;
}
```
该函数接受4个参数:
- degrees:度数
- minutes:分钟数
- seconds:秒数
- direction:方向(N、S、E、W)
该函数返回一个double类型的十进制位置数据。
例如,如果要将北纬34度12分30秒转换为十进制格式,则可以调用该函数如下:
```c
double decimal = convertDMStoDecimal(34, 12, 30.0, 'N');
```
该函数还支持南纬和西经的数据转换,只需要将方向参数设置为'S'或'W'即可。
阅读全文