
用C语言写将一个N阶行列式的转置程序,要用到函数的声明。以下是自己写的,错误很多。望各位高手指正!
#include<stdio.h>#defineN3voidmain(){inta[N][N];inti,j,t,c;for(i=0;i<=N-1;i++)for(j=0...
#include<stdio.h>
#define N 3
void main()
{
int a[N][N];
int i,j,t,c;
for(i=0;i<=N-1;i++)
for(j=0;j<=N-1;j++)
scanf("%d",&a[i][j]);
int change(int a[N][N]);
c=change(a[i][j]);
for(i=0;i<=N-1;i++)
{printf("\n");
for(j=0;j<=N-1;j++)
printf("%3d.",c);
}
int change(a[i][j])
{
int j,i,t;
for(i=0,j=0;i<=N-1;i++,j++)
for(;j<=N-1;j++)
{t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;}
for(i=0;i<=N-1;i++)
for(j=0;j<=N-1;j++)
return a[i][j];
}
} 展开
#define N 3
void main()
{
int a[N][N];
int i,j,t,c;
for(i=0;i<=N-1;i++)
for(j=0;j<=N-1;j++)
scanf("%d",&a[i][j]);
int change(int a[N][N]);
c=change(a[i][j]);
for(i=0;i<=N-1;i++)
{printf("\n");
for(j=0;j<=N-1;j++)
printf("%3d.",c);
}
int change(a[i][j])
{
int j,i,t;
for(i=0,j=0;i<=N-1;i++,j++)
for(;j<=N-1;j++)
{t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;}
for(i=0;i<=N-1;i++)
for(j=0;j<=N-1;j++)
return a[i][j];
}
} 展开
1个回答
展开全部
#include"stdio.h"
#define N 3
change(int a[][3])
{
int j,i,t;
for(i=0,j=0;i<=N-1;i++,j++)
for(;j<=N-1;j++)
{
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
}
void main()
{
int a[N][N];
int i,j,t;
for(i=0;i<=N-1;i++)
for(j=0;j<=N-1;j++)
scanf("%d",&a[i][j]);
change(a);
for(i=0;i<=N-1;i++)
{
printf("\n");
for(j=0;j<=N-1;j++)
printf("%3d",a[i][j]);
}
}
楼主好好学吧,要是有兴趣,可以加,1093509004
#define N 3
change(int a[][3])
{
int j,i,t;
for(i=0,j=0;i<=N-1;i++,j++)
for(;j<=N-1;j++)
{
t=a[i][j];
a[i][j]=a[j][i];
a[j][i]=t;
}
}
void main()
{
int a[N][N];
int i,j,t;
for(i=0;i<=N-1;i++)
for(j=0;j<=N-1;j++)
scanf("%d",&a[i][j]);
change(a);
for(i=0;i<=N-1;i++)
{
printf("\n");
for(j=0;j<=N-1;j++)
printf("%3d",a[i][j]);
}
}
楼主好好学吧,要是有兴趣,可以加,1093509004
追问
这里定义函数时前面为什么不用加void?
追答
无返回值时可加可不加,一般情况下没有影响影响
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询