gpt4 book ai didi

C编程: Creating a Program to Pull Latitude and Longitude from a typedef struct

转载 作者:行者123 更新时间:2023-11-30 15:29:38 26 4
gpt4 key购买 nike

所以我的类(class)有一个项目,我需要编写一个程序,用户在其中输入一个城市,然后该程序将从 typedef 结构中查找该城市,然后打印该城市的纬度和经度坐标。我的想法是将城市名称作为输入,然后以某种方式将城市名称与结构中的城市名称(可能是指针?)进行比较,然后在城市匹配时获取纬度和经度。我认为我需要创建一个循环程序来读取数据,直到找到匹配项。您能告诉我我是否走在正确的道路上,或者您将如何编写该程序?如果有人想尝试的话,我附上了该结构的一小部分(完整的有 200 个城市)。

  #define MAX_CITY_LEN   35

typedef struct {
char name[MAX_CITY_LEN];
float latitude;
float longitude;
} PLACE_T;

PLACE_T places[] =
{{"Aberdeen,Scotland",57.15,-2.15},
{"Adelaide,Australia",-34.92,138.6},
{"Albany,NY,USA",42.67,-73.75},
{"Albuquerque,NM,USA",35.08,-106.65},
{"Algiers,Algeria",36.83,3.0},
{"Amarillo,TX,USA",35.18,-101.83},

谢谢,亚历克斯

最佳答案

这样做:

 typedef struct { 
char name[MAX_CITY_LEN];
float latitude;
float longitude;
} PLACE_T;

PLACE_T places[] ={
{"India,kochi",57.15,-2.15},
{"Adelaide,Australia",-34.92,138.6},
{"Albany,NY,USA",42.67,-73.75},
{"Albuquerque,NM,USA",35.08,-106.65},
{"Algiers,Algeria",36.83,3.0},
{"Amarillo,TX,USA",35.18,-101.83},
};

int main(){
int j;
int found=0;
char city[MAX_CITY_LEN];
printf("enter city name:");
fgets(city,MAX_CITY_LEN,stdin);
city[strlen(city)-1]='\0';
int citySize=(sizeof(places)/sizeof(places[0]));
for(j=0;j<citySize;j++){
if(strcmp(city,places[j].name)==0){
found=1;
printf("lat = %f, long = %f",places[j].latitude,places[j].longitude);
break;
}
}
if(!found)
printf("City not found");

return 0;

}

关于C编程: Creating a Program to Pull Latitude and Longitude from a typedef struct,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26148298/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com