その他の関数だけなら新しいプログラムにインクルードすればいいだけの話ですが、例えば以下のプログラムで出た結果を新しいプログラム(例えばprintfだけで結果を出力するだけのプログラムあたり)
に反映させるにはどういった方法でできるのでしょうか。
#include <stdio.h>
#include <math.h>
#define CityNum 6
double X[CityNum]={6,3,9,10,4,2};
double Y[CityNum]={6,3,9,10,4,2};
int distance(int a, int b)
{
double xd, yd;
xd = X[a]-X[b];
yd = Y[a]-Y[b];
return (int)(sqrt(xd*xd+yd*yd) + 0.5);
}
int main(void)
{
int d;
int flag[CityNum]={0};
int tour[CityNum];
int i,j,min,min_locate;
int start;
start=0;
flag[start]=1;
tour[0]=start;
for(i=1;i<CityNum;i++){
min=100;
for(j=0;j<CityNum;j++){
if(flag[j]==0 && start!=j){
d=distance(start,j);
if(d<min){
min=d;
min_locate=j;
}
}
}
flag[min_locate]=1;
start=min_locate;
tour[i]=start;
}
for(i=0;i<CityNum;i++)
printf("tour[%d]=%d\n",i,tour[i]);
return 0;
}