//連立方程式を解く
void linearEquations (int n,double x[/url],double c[/url][10],double b[/url]){
int k,j,i;
for(j=1;j<=n;j++){
c[j][n+1]=b[j];
}
//前進計算(上三角化、対角要素は1)
for(j=1;j<=n;j++){
for(k=j+1;k<=n+1;k++){
c[j][k]/=c[j][j];
}
c[j][j]=1;
for(i=j+1;i<=n;i++){
for(k=j+1;k<=n+1;k++){
c[k]-=c[j]*c[j][k];
}
c[j]=0;
}
}
//後退計算(係数行列を単位行列化)
for(j=n;j>0;j--){
for(i=1;i<j;i++){
for(k=j+1;k<=n+1;k++){
c[k]-=c[j]*c[j][k];
}
c[j]=0;
}
}
for(j=1;j<=n;j++){
x[j]=c[j][n+1];
}
}このプログラムの9行目でc[j][j]が0になった場合は、c[j]が0でないようなi行(j<i<=n)を見つけて、j行とi行を入れ替える、という操作を入れたいのですが、どのようにすればよいのでしょうか??初心者でとても申し訳ないのですが、コメントをお願いします。