各位前辈,小弟新学C语言,怎么也调试不过,不知道哪里出了问题,请问我该怎么调试?
调用void SelfMul(int A1[][3],int A2[][3],int n)实现3阶矩阵的乘法
#include
//void SelfMul(int A1[][maxSize],int A2[][maxSize],int n)
void SelfMul(int A1[][3],int A2[][3],int n)
{
int s=0;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{
A2[i][j]=0;
for(int k=0;k<n;k++)
A2[i][j]=A2[i][j]+A1[i][k]*A1[k][j];
printf("%d ",A2[i][j]);
if(++s%3==0)printf("\n");
}
}
int main()
{
int A1[][3]={{0,1,0},{0,0,1},{1,1,0}};
int A2[3][3];
// int s=0;
SelfMul(A1[][3],A2[][3],3); //编译问题出错提示所在行
/*
for(int m=0;m<3;m++)
for(int b=0;b<3;b++)
{
printf("%d ",A2[m][b]);
if(++s%3==0)printf("\n");
}
*/
return 0;
}
编译不通过,提示error C2059: syntax error : ']'
include
void SelfMul(int (A1)[3],int (A2)[3],int n)
{
int s=0;
for(int i=0;ifor(int j=0;j{
A2i=0;
for(int k=0;kA2i=A2i+A1i*A1k;
printf("%d ",A2i);
if(++s%3==0)printf("n");
}
}
int main()
{
int A1[][3]={{0,1,0},{0,0,1},{1,1,0}};
int A23;
SelfMul(&A1,&A2,3);
return 0;
}
0 0 1
1 1 0
0 1 1
include
void SelfMul(int (A1)[3],int (A2)[3],int n)
{
int s=0;
for(int i=0;ifor(int j=0;j{
A2i=0;
for(int k=0;kA2i=A2i+A1i*A1k;
printf("%d ",A2i);
if(++s%3==0)printf("n");
}
}
int main()
{
int A1[][3]={{0,1,0},{0,0,1},{1,1,0}};
int A23;
SelfMul(&A1,&A2,3);
return 0;
}
0 0 1
1 1 0
0 1 1
include
void SelfMul(int (A1)[3],int (A2)[3],int n)
{
int s=0;
for(int i=0;ifor(int j=0;j{
A2i=0;
for(int k=0;kA2i=A2i+A1i*A1k;
printf("%d ",A2i);
if(++s%3==0)printf("n");
}
}
int main()
{
int A1[][3]={{0,1,0},{0,0,1},{1,1,0}};
int A23;
SelfMul(&A1,&A2,3);
return 0;
}
0 0 1
1 1 0
0 1 1
void SelfMul(int (A1)[3],int (A2)[3],int n)
{
int s=0;
for(int i=0;ifor(int j=0;j{
A2i=0;
for(int k=0;kA2i=A2i+A1i*A1k;
printf("%d ",A2i);
if(++s%3==0)printf("n");
}
}
int main()
{
int A1[][3]={{0,1,0},{0,0,1},{1,1,0}};
int A23;
SelfMul(&A1,&A2,3);
return 0;
}
0 0 1
1 1 0
0 1 1
标准的[]里面应该是有值的
你试试这个编译应该不会出错,但是运行就不知道了
enter code here #include <stdio.h>
void SelfMul(int A1[][3],int A2[][3],int n);
void SelfMul(int A1[][3],int A2[][3],int n)
{
int s=0;
for(int i=0; i<n; i++)
for(int j=0; j<n; j++)
{
A2[i][j]=0;
for(int k=0; k<n; k++)
A2[i][j]=A2[i][j]+A1[i][k]*A1[k][j];
printf("%d ",A2[i][j]);
if(++s%3==0)printf("\n");
}
}
int main()
{
int A1[][3]= {{0,1,0},{0,0,1},{1,1,0}};
int A2[3][3];
int s = 0;
SelfMul(A1[3][3],A2[3][3],3);
for(int m=0; m<3; m++)
for(int b=0; b<3; b++)
{
printf("%d ",A2[m][b]);
if(++s%3==0)printf("\n");
}
return 0;
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。