最小距离法的C语言程序

来源:百度知道 编辑:UC知道 时间:2024/06/22 08:17:04
我做的是区域物流中心规划,求一中心到四周城市运输费用最小的位置,可以变成程序么?谢谢了!!!!
或者是最短路径法的C语言程序

1--2: 1 ,2--1:2
1--3:2,3--1:5
1--4:3,4--1:1
2--3:7,3--2:6
2--4无直线
3--4:2,4--3:4

就你上面的问题我写了下
以下是代码通过编译了
输入2个城市比如输入2,3
输入的是城市间最短路径
以及路程。
如果城市的个数以及他们之间
的距离如果变了。
程序中给出参数也要修改。
你可以根据自己需要进行修改。
#include<stdio.h>
void main()
{
void print2(int a,int d);
void print3(int a,int b,int d);
void print4(int a,int b,int c,int d);
int two(int i,int j,int f[][5]);
int three(int i,int j,int i1,int f[][5]);
int four(int i,int j,int i1,int j1,int f[][5]);
int f[5][5]={0,0,0,0,0,0,0,1,2,3,0,2,0,7,9999,0,5,6,0,2,0,1,9999,4,0};
int a,b,c,d,i,sum1=0;
scanf("%d,%d",&a,&d);
for(i=1;i<=4;i++)
{
b=i;
if(b==a||b==d)
b=0;
if(b!=0)
break;
}
c=10-a-b-d;
sum1=two(a,d,f);
i=1;
if(three(a,b,d,f)<sum1)
{
sum1=three(a,b,d,f);
i=2;
}
if(three(a,c,d,f)<sum1)
{
sum1=three(a,c,d,f);
i=3;
}
if(four(a,b,c,d,f)<sum1)
{
sum1=four(a,b,c,d,f);
i=4;
}
i