闵行中心医院是三甲吗:为什么无法运行?(下)

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/09 07:57:42
int rank(float a[],int m,int n)
{int i,s;
basic_line_transforms(a,m,n);
for(i=0,s=0;i<m;i++)
if(a[(i+1)*n-1]) s++;
return s;
}
void change(float a[],int n,int x,int y)
{int i;
float t;
for(i=0;i<n;i++)
{t=a[n*x+i];
a[n*x+i]=a[n*y+i];
a[n*y+i]=t;
}
}
void basic_line_transforms2(float a[],int m,int n)
{int i,j,k,l,s;
float t;
s=m<n?m:n;
for(i=0,k=1;k<s;i++,k++)
{if(a[i*n+k]==0)
{for(j=i;j<m;j++)
if(a[j*n+i]!=0)
change(a,n,i,j);
if(j==m)
k++;
}
else
for(j=i+1;j<=m;j++)
{t=a[j*n+k]/a[i*n+k];
for(l=0;l<n;l++)
a[j*n+l]-=a[i*n+l]*t;
}
}
}
int basic_line_transforms(float a[],int m,int n)
{int i,j,k,l,s,q;
float t;
s=m<n?m:n;
for(i=0,k=0;k<s;i++,k++)
{if(a[i*n+k]==0)
{for(j=i;j<m;j++)
if(a[j*n+i]!=0)
{change(a,n,i,j);
q++;
}
if(j==m)
k++;
}
else
for(j=i+1;j<=m;j++)
{t=a[j*n+k]/a[i*n+k];
for(l=0;l<n;l++)
a[j*n+l]-=a[i*n+l]*t;
}
}
return q;
}

int judge(float a[],int m,int n)
{int r1,r2,i,j;
float b[100];
r1=rank(a,m,n);
for(i=0,j=0;i<r1*n;i++,j++)
{if(i%n!=n-1)i++;
b[j]=a[i];
}
r2=rank(b,r1,n-1);
if(r1!=r2) return 0;
else if(r1==n-1) return 1;
else return n-r1;
}

void accompany(float a[],int n,float b[])
{int i,j,k,l,m=0;
float c[81];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{for(k=0;k<n;k++)
for(l=0;l<n;l++)
if(k!=i&&l!=j)
{c[m]=a[k*n+l];
m++;
}
b[i*n+j]=pow(-1,i+j)*value(c,n-1);
}
transform(b,n,n);
}

void transform(float a[],int m,int n)
{float b[100];
int i,j;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
b[i*m+j]=a[j*n+i];
for(i=0;i<m*n;i++)
a[i]=b[i];
}
float value(float b[],int n)
{int i,k,s;
float x[100],a[100],d=1;
for(k=0;k<n*n;k++)
a[k]=b[k];
s=pow(-1,basic_line_transforms(b,n,n));
for(i=0;i<n;i++)
d*=a[i*n+i];
return s*d;
}

是因为没有主函数吧,你这只有一系列的子函数,也就是说没有程序的入口吧