c# 程序调试报错

来源:百度知道 编辑:UC知道 时间:2024/05/06 14:45:01
public double[,] initial(int n) //初始化函数,计算出距离数组
{
double[,] city = new double[n, 2]{{48 ,21},{52, 26},{55, 50},{50, 50},{41 ,46},{51 ,42},{55, 45},{38, 33},{33 ,34},{45, 35},{40, 37},{50, 30},{55, 34},{54, 38},{26, 13},{15, 5},{21 ,48},{29 ,39},{33 ,44},{15, 19},{16 ,19},{12, 17},{50, 40},{22, 53},{21 ,36},{20, 30},{26, 29},{40, 20},{36, 26},{62, 48},{67, 41},{62, 35},{65, 27},{62, 24},{55, 20},{35, 51},{30 ,50},{45 ,42},{21, 45},{36, 6},{6, 25},{11, 28},{26, 59},{30, 60},{22, 22},{27 ,24},{30, 20},{35 ,16},{54 ,10},{50, 15},{44 ,13},{35, 60},{40 ,60},{40, 66},{31, 76},{47, 66},{50, 70},{57, 72},{55, 65},{2, 38},{7, 43},{9 ,56},{15, 56},{10 ,70},{17, 64},{55 ,57},{62, 57},{70 ,64},{64 ,4},{59, 5},{50, 4},{60, 15},{66, 14},{66, 8},{43 ,26}};

//城市坐标数组 n=75

double[,] arraydis = new double[n, n];
for (int i = 0; i < n-1; i++)
{
for (int j = i+1; j <

设个断点自己跑,跑出来才会记忆深刻。

Math.Pow(city[i, 2] - city[j, 2] ,2), 0.5);//这一句老报错,说明j或者i大于你定义的数组大小,for (int j = i+1; j < n-1; j++)估计就可以了