```c++
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <string>
using namespace std;
//结构体
struct City { //图的顶点
string country, city;
float latitude, longitude;//经纬度
};
struct Route {
string start_city, end_city, transport, other_info;//起点,终点,交通工具,其他信息
float time, cost;//时间,花费
};
struct Arc {
float adjvex;//权值
Route* info;//弧信息
};
struct Graph {
Arc arcs[199][199];//二维数组
City vexs[199];//顶点数据信息
int vexnum, arcnum;//顶点数和弧数
};
void test() {
}
int main()
{
//读取 cities 表
FILE* fp;
fp = fopen("C:\\Users\\张宇航\\Desktop\\集中实习\\cities.csv", "r");
if (!fp) {
printf("ERROR!!!");
exit(0);
}
City city[199];
char ch;
float f;
int i = 0, j = 0;
while (!feof(fp))
{
//存储国家名
ch = fgetc(fp);
for (; ch != ','; ch = fgetc(fp))
{
city[i].country += ch;
}
//存储城市名
ch = fgetc(fp);
for (; ch != ','; ch = fgetc(fp))
{
city[i].city += ch;
}
//存储经纬度
fscanf(fp, "%f,", &f);
city[i].latitude = f;
fscanf(fp, "%f\n", &f);
city[i].longitude = f;
i++;
}
fclose(fp);
//读取 routes 表
FILE* fp1;
fp1 = fopen("C:\\Users\\张宇航\\Desktop\\集中实习\\routes.csv", "r");
if (!fp1) {
printf("ERROR!!!");
exit(0);
}
Route route[1975];
i = 0;
while (!feof(fp1))
{
//存储起点城市
ch = fgetc(fp1);
for (; ch != ','; ch = fgetc(fp1))
{
route[i].start_city += ch;
}
//存储终点城市
ch = fgetc(fp1);
for (; ch != ','; ch = fgetc(fp1))
{
route[i].end_city += ch;
}
//存储交通工具
ch = fgetc(fp1);
for (; ch != ','; ch = fgetc(fp1))
{
route[i].transport += ch;
}
//存储时间和花费
fscanf(fp1, "%f,", &route[i].time);
fscanf(fp1, "%f,", &route[i].cost);
//存储其他信息
ch = fgetc(fp1);
for (; ch != '\n'; ch = fgetc(fp1))
{
route[i].other_info += ch;
}
i++;
}
return 0;
}
0x00007FF87FBCFDEC 处(位于 第一次实习.exe 中)引发的异常: Microsoft C++ 异常: std::bad_alloc,位于内存位置 0x000000D2F1AA91B0 处。
0x00007FF87FBCFDEC 处(位于 第一次实习.exe 中)有未经处理的异常: Microsoft C++ 异常: std::bad_alloc,位于内存位置 0x000000D2F1AA91B0 处。