c 二维数组问题,我标注的都是有问题的地方,哪位高手帮我解决。
void Matrix_inv(double a[][],int N) //这里有问题,其中a[N][N]
{
int M=2*N;
double b[N][M]
for(int i=0;i<N;i++) //将a[N][N]赋给b[N][M],其中b[0][0]到b[N][N]分别是a[N][N]
{ //剩下的赋予一个单位矩阵,就是b[N][M]有a[N][N]和 //一个N阶的单位矩阵组成
for(int j=0;j<M;j++)
{
if(j<2) b[i][j]=a[i][j];
else if(j=i+n) b[i][j]=1;
printf("%lf",b[i][j]);
}
printf("\n");
}
答案:void Matrix_inv(double a[][N],int N) //行可以省略,但列一定不能省略
{
int i,j;
int M=2*N;
double b[N][M]
for(i=0;i<N;i++) // 定义不能放在里面,注意C不是C#,不能将定义放在里面
{
for(j=0;j<M;j++) //同理
{
if(j<2) b[i][j]=a[i][j];
else if(j==i+n) b[i][j]=1; //是等于,不是赋值
printf("%lf",b[i][j]);
}
printf("\n");
}
上一个:c语言问题
下一个:朋友能不能帮我解决一下C程序设计的问题,我想了好久没做出!!