#include <stdio.h>
#include <string.h>
void parse_gprmc(char *nmea) {
// Your logic here
char time[9]={0},lat[11]={0},lon[12]={0};
for (int i=7,j=0;i<=12;i++){
time[j]=*(nmea+i);
if (j==1 || j==4) time[++j]=':';
j++;
}
for (int i=16,j=0;i<=25;i++){
if (*(nmea+i)==',')
lat[j]=' ';
else lat[j]=*(nmea+i);
j++;
}
for (int i=27,j=0;i<=37;i++){
if (*(nmea+i)==',')
lon[j]=' ';
else lon[j]=*(nmea+i);
j++;
}
printf("Time: %s\n",time);
printf("Latitude: %s\n",lat);
printf("Longitude: %s",lon);
}
int main() {
char nmea[100];
fgets(nmea, sizeof(nmea), stdin);
parse_gprmc(nmea);
return 0;
}
Input
$GPRMC,123519,A,4807.038,N,01131.000,E
Expected Output
Time: 12:35:19 Latitude: 4807.038 N Longitude: 01131.000 E