转秩矩阵

None.gif #include  < stdio.h >
None.gif#include 
< conio.h >
None.gif
#define  M 4
None.gif
#define  N 4
None.gif
void  main()
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif clrscr();
InBlock.gif 
int i,k;
ExpandedSubBlockStart.gifContractedSubBlock.gif 
int a[M][N]=dot.gif{dot.gif{1,2,3,4},dot.gif{5,6,7,8},dot.gif{9,10,11,12},dot.gif{13,14,15,16}};
InBlock.gif 
int b[M][N];
InBlock.gif 
for(i=0;i<M;i++)
InBlock.gif   
for(k=0;k<N;k++)  b[i][k]=a[k][i];
InBlock.gif 
for(i=0;i<M;i++)
ExpandedSubBlockStart.gifContractedSubBlock.gif   
dot.giffor(k=0;k<N;k++)  printf("%5d",b[i][k]);
InBlock.gif     printf(
"\n");
ExpandedSubBlockEnd.gif   }

ExpandedBlockEnd.gif}

上例中定义了2个数组,若不借助第二个数组,可以用如下程序实现:
None.gif #include  < stdio.h >
None.gif#include 
< conio.h >
None.gif
#define  M 4
None.gif
#define  N 4
None.gif
void  main()
ExpandedBlockStart.gifContractedBlock.gif
dot.gif {
InBlock.gif clrscr();
InBlock.gif 
int i,k,t;
ExpandedSubBlockStart.gifContractedSubBlock.gif 
int a[M][N]=dot.gif{dot.gif{1,2,3,4},dot.gif{5,6,7,8},dot.gif{9,10,11,12},dot.gif{13,14,15,16}};
InBlock.gif 
int b[M][N];
InBlock.gif 
for(i=0;i<M;i++)
ExpandedSubBlockStart.gifContractedSubBlock.gif   
for(k=0;k<i;k++)  dot.gif{t=a[k][i];a[k][i]=a[i][k];a[i][k]=t;}
InBlock.gif 
for(i=0;i<M;i++)
ExpandedSubBlockStart.gifContractedSubBlock.gif   
dot.giffor(k=0;k<N;k++)  printf("%5d",a[i][k]);
InBlock.gif     printf(
"\n");
ExpandedSubBlockEnd.gif   }

ExpandedBlockEnd.gif}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值