永发信息网

有一个矩阵,数据如图所示,在数组初始化时给数组赋值,然后将矩阵转置。

答案:2  悬赏:70  手机版
解决时间 2021-01-02 23:24
原始矩阵{
1 2 3
4 5 6
7 8 9
}

转化矩阵{
1 4 7
2 5 8
3 6 9}
矩阵的转置就是将第i行第j列的元素与第j行第i列的元素互换。转置后的矩阵如图所示。
最佳答案
#include
main(){
int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
int b[3][3];
int temp,i;
for(i=0;i<3;i++){
for(j=0;j<3;j++){
b[j][i]=a[i][j];
}
}
printf("array A is:");
for(i=0;i<3;i++){
for(j=0;j<3;j++){
printf("\t%d",a[i][j]); }
}
for(i=0;i<3;i++){
for(j=0;j<3;j++){
printf:("\t%d",b[i][j]); }
}

}
全部回答

解决了,详见注释。你可以学习一下调试的方法,这样以后这种简单问题就不需要别人帮忙了,而且调试的时候会大大提升你的编程能力。

你的问题主要出在边界控制上,可以一步一步跟着分析一下。

#include<stdio.h> int main() {    int n;  printf("请输入矩阵阶数:");scanf("%d",&n);printf("\n\n\n");  int paixu(int n);  paixu(n);  return 0; } int paixu(int n) {    int b[100][100];  int i,j,k,m=1;  for(k=0,i=0,j=-1;k<(n+1)/2;)  //控制螺旋矩阵闭合圈数的循环  {   //注意循环结束条件 每次for循环结束后i/j的值都多移动了1 应修正之   //每次某方向到头之后 要向下一个方向移动1 否则会覆盖   for(j++;j<n-k;j++)     //向右赋值,移动   {    b[i][j]=m++;   }   j--;//回调   for(i++;i<n-k;i++)   //向下赋值   {    b[i][j]=m++;   }   i--;   for(j--;j>=k;j--)    //向左赋值,k从0起   {    b[i][j]=m++;   }   j++;   k++;//即将转完一圈避免覆盖,也可将下一句写为i>k而把k++放到外层for循环中   for(i--;i>=k;i--)     //向上赋值   {    b[i][j]=m++;   }   i++;  }

 for(i=0;i<n;i++)  {   for(j=0;j<n;j++)   {    printf("%d\t",b[i][j]);    if(j==n-1)printf("\n\n\n\n"); //每输出4列换一行输出   }  }  return 0; }

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
广州万国奥特莱斯第几层有PC的游戏碟买,或者
中国银行美金兑换怎样规定
— Mary, whose photo is it?—It be Lu’s.
单选题Ihaveapetcat________Mimi.A.calledB
把3an+2+15an+1-45an分解因式是A.3an(a2+5a-
单选题男性体细胞中同时存在X、Y同源染色体,
天龙八部 丐帮武魂
单选题I’ve designed five or&nbs
判断题两个整数的最大公约数和最小公倍数的积
长方体怎么剪?亲们~
孙传芳主力被消灭是在A.湖南战场B.湖北战场C.
三节五生是什么意思
键盘的按键给凹下去了,活了。怎么弄好啊!拜
沧桑的意思是什么?
科颜氏高保湿还是红石榴?
推荐资讯
下列与“惟坚韧者始能遂其志”哲理一致的是A.
为什么没有南极熊
阅读理解China'slong-awaitedrulesonschoolbu
怎样构造支持向量机中的核函数?
最佳的反义词
这就是生活的英文
下列说法正确的是A.做匀速圆周运动的物体运动
糖果婚庆策划我想知道这个在什么地方
如何可以快速的申请中国贸易网会员,并通过审
漳县交警大队在什么地方啊,我要处理点事
单选题下列诗句翻译有误的一项是A.“渡远荆门
---This returned Chinese scholar has becom
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?