皆様ありがとうございます。
遅くなって申し訳ありません。
実際の概略はこんな感じです。

void ans(x[50][50],y[50][50])
{double k1;double k2;double k3;double k4;
k1=exp(1/x[k][i]);
k2=exp(1/(x[k][i]+k1/2);
k3=exp(1/(x[k][i]+k2/2);
k4=exp(1/(x[k][i]+k3);
y[k][i+1]=y[k][i]+(k1+k2+k3+k4)/6;
}

main()
{
double x[50][50],y[50][50],z[50][50];
int k,i,a;
a=3;

for(k=0;k<50;++k){
x[0][0]=0;
y[k][0]=1;
for(i=0;i<50;++k){
ans(x,y);
z[k][i]=10*y[k][i];
}
x[k+1][i]=x[k][i]+a*z[k][i];
}
}

これを
double f(double x[50][50])
{
return(exp/(x1[k][i]));
}

void ans(x[50][50],y[50][50])
{double k1(double x[50][50]);double k2(double x[50][50]);
double k3(double x[50][50]);double k4(double x[50][50]);
k1=f(x[k][i]);
k2=f(x[k][i]+k1/2);
k3=f(x[k][i]+k2/2);
k4=f(x[k][i]+k3);
y[k][i+1]=y[k][i]+(k1+k2+k3+k4)/6;
}
main()
double x[50][50],y[50][50],z[50][50];
int k,i,a;

のように書きなおしたいのですが、できませんでした。
実際はもっと代入する式が多いので、f=exp(1/x[k][i])を
k1,k2,k3,に代入しない形にしたいのです。
何かよい方法ないでしょうか?