下面是将 WGS84 坐标系转换为 UTM 坐标系的 C 语言代码示例:
``` #include <stdio.h> #include <math.h>
#define PI 3.14159265
int main() { // 定义变量 double lat, lon; // 纬度和经度 char lat_hemi, lon_hemi; // 纬度和经度的半球 int zone; // UTM 区域 double x, y; // UTM 坐标
// 输入 WGS84 坐标 printf("输入纬度: "); scanf("%lf%c", &lat, &lat_hemi); printf("输入经度: "); scanf("%lf%c", &lon, &lon_hemi);
// 将角度转换为弧度 lat = lat * PI / 180; lon = lon * PI / 180;
// 计算 UTM 区域 zone = (int)((lon + 180) / 6) + 1;
// 计算 UTM 坐标 double a = 6378137; double e = 0.081819191; double k0 = 0.9996;
double e2 = e * e; double n = (a - b) / (a + b); double n2 = n * n; double n3 = n * n * n;
double cos_lat = cos(lat); double sin_lat = s