:编写程序,实现矩阵(3行3列)的转置(即行列互换)

:输入下面的矩阵:100200300400500600700800900程序输出:100400700200500800300600900... :输入下面的矩阵:
100 200 300
400 500 600
700 800 900
程序输出:
100 400 700
200 500 800
300 600 900
展开
 我来答
百度网友79faf363
2019-11-21 · TA获得超过1.1万个赞
知道小有建树答主
回答量:1212
采纳率:75%
帮助的人:53.9万
展开全部

#include<stdio.h>

#define N 3

int arry[N][N],b[N][N];

int main(){

void merg(int arry[3][3]);

int a[3][3],i,j;

for(i=0;i<N;i++)

for(j=0;j<N;j++){

scanf("%d",&arry[i][j]);

}

printf("原始的矩阵为:\n");

for(i=0;i<N;i++){

for(j=0;j<N;j++){

printf("%d ",arry[i][j]);

printf("\n"); 

}

printf("\n"); 

merg(arry);

printf("变换后的矩阵为:\n");

for(i=0;i<N;i++){

for(j=0;j<N;j++){

printf("%d ",b[i][j]);

printf("\n"); 

}

}

void merg(int arry[3][3]){

int i,j,temp;

for(i=0;i<N;i++)

for(j=0;j<N;j++){

b[j][i]=arry[i][j];

}

}

扩展资料:

for循环:

语句的一般形式为:

for (表达式1; 表达式2; 表达式3)
{
语句;
}

表达式1、表达式2和表达式3之间是用分号;隔开的,千万不要写成逗号。

for(表达式1;表达式2;表达式3)的后面千万不要加分号。

执行过程:

求解表达式1。

求解表达式2。若其值为真,则执行 for 语句中指定的内嵌语句,然后执行第3步;若表达式2值为假,则结束循环,转到第5步。

求解表达式3。

转回上面第2步继续执行。

循环结束,执行 for 语句下面的语句。

多层 for 循环:

执行过程与单个 for 循环的执行过程是一模一样的。多层 for 循环将单个 for 循环大括号中的“语句”换成了 for 循环。

雪在风6
2010-06-11 · TA获得超过146个赞
知道答主
回答量:22
采纳率:0%
帮助的人:0
展开全部
#include<stdio.h>
void main()
{
void change(int x[][3]);
int x[3][3]={{100,200,300},{400,500,600},{700,800,900}};
int i,j;
printf("原数组为\n");
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
printf("%3d",x[i][j]);
}
printf("\n");
}
change(x);
printf("行列互换后的数组为\n");
for(i=0;i<=2;i++)
{
for(j=0;j<=2;j++)
{
// x[i][j]=x[i][j]+1;
printf("%3d",x[i][j]);
}
printf("\n");
}
}
void change(int x[][3])//函数调用change(x) 这里的x是数组

{
int a;
a=x[0][1];x[0][1]=x[1][0];x[1][0]=a;
a=x[0][2];x[0][2]=x[2][0];x[2][0]=a;
a=x[1][2];x[1][2]=x[2][1];x[2][1]=a;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xsn2009
推荐于2017-10-09 · TA获得超过510个赞
知道小有建树答主
回答量:238
采纳率:100%
帮助的人:259万
展开全部
#include<iostream.h>
void main()
{
int a[3][3],b[3][3];
int p=0;
for(int i=0;i<3;i++)
{
for(int j=0;j<3;j++)
{
cin>>a[i][j];
b[j][i]=a[i][j];
}
}
cout<<"原矩阵为:"<<endl;
for(int m=0;m<3;m++)
{
for(int n=0;n<3;n++)
{
cout<<a[m][n]<<" ";
p++;
if(p%3==0)
cout<<endl;

}
}
cout<<endl;
cout<<"转置后的矩阵为:"<<endl;
for(int c=0;c<3;c++)
{
for(int d=0;d<3;d++)
{
cout<<b[c][d]<<" ";
p++;
if(p%3==0)
cout<<endl;

}
}
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-06-11
展开全部
考试时禁止作弊!好歹也是个楷模!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
繁艾光勇捷
2019-07-16 · TA获得超过3970个赞
知道大有可为答主
回答量:3148
采纳率:32%
帮助的人:229万
展开全部
int
fun(int
array[3][3])
{ int
i,j,t;for
(i=0;i<3;i++)for(j=i;j<3;j++)t=array[i][j],array[i][j]=array[j][i],array[j][i]=t;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式