帮我看看程序错在哪里

来源:百度知道 编辑:UC知道 时间:2024/05/16 04:57:06
# include<iostream.h>

void shortest_path(int v,int cost[10][10],int dist[10],int n)
{
int u,num,i,w,min;
int s[10];
for(i=1;i<=n;i++)
{
s[i]=0;
dist[i]=cost[v][i];
}
s[v]=1;
dist[v]=0;
for(num=2;num<=n-1;num++)
{
min=10000;
for(w=1;w<=n;w++)
{
if((s[w]=0)&&(dist[w]<min))
{
min=dist[w];
u=w;

}
}

s[u]=1;
for(w=1;w<=n;w++)
{
if(s[w]=0)
{
if(dist[w]>(dist[u]+cost[u][w]))
dist[w]=dist[u]+cost[u][w];
}
}
}

}

int main()
{
int l,f,n,s,z;
int v;
int cost[10][10];
int dist[10];
for(int k=0;k<10;k++)
dist[k]=10000;

for(int i=0;i<10;i++)
for(int j=0;j<10;j++)
cost[10][10]=10000;

# include<iostream.h>

void shortest_path(int v,int cost[10][10],int dist[10],int n)
{
int u,num,i,w,min;
int s[10];
for(i=1;i<=n;i++)
{
s[i]=0;
dist[i]=cost[v][i];
}
s[v]=1;
dist[v]=0;
for(num=2;num<=n-1;num++)
{
min=10000;
for(w=1;w<=n;w++)
{
if((s[w]=0)&&(dist[w]<min))
{
min=dist[w];
u=w;

}
}

s[u]=1;
for(w=1;w<=n;w++)
{
if(s[w]=0)
{
if(dist[w]>(dist[u]+cost[u][w]))
dist[w]=dist[u]+cost[u][w];
}
}
}

}

int main()
{
int l,f,n,s,z;
int v;
int cost[10][10];
int dist[10];
for(int k=0;k<10;k++)
dist[k]=10000;
for(int j=0;j<10;j++)
cout<<dist[j]<<endl;

for(int i=0;i<10;i++)
for(int j=0;j<10;j++)
cost[i][j]=