C语言,将一个二维数组a的行和列的元素互换,存到另一个二维数组b中。列如 123 1 4 2 5 456 3 6

main()
{ int a[2][3]={{1,2,3},{4,5,6}};
int b[3][2],i,j;
printf("array a:\n");
for(i=0;i<=1;i++)
{
for(j=0;j<=2;j++)
{
printf("%5d",a[i][j]);
b[j][i]=a[i][j];
}
printf("\n");
}
printf("array b:\n");
for(i=0;i<=2;i++)
{
for(j=0;j<=1;j++)
printf("%5d",b[i][j]);
printf("\n");
}
array a array b是什么意思 还用重点的是把每句FOR循环后面的都详细解释一下,特别是这个b[j][i]=a[i][j]怎么来的,为什么要怎么换。记住把每句for循环都解释哈 谢谢

看来你是个超级小菜鸟啊,解析注上了,慢慢学习吧
main()
{ int a[2][3]={{1,2,3},{4,5,6}};
int b[3][2],i,j;
printf("array a:\n"); //双引号里的是字符串提示信息,作用是在屏幕上显示提示
for(i=0;i<=1;i++) //外循环i遍历a数组的i行
{
for(j=0;j<=2;j++) //内循环j是在i行遍历该行所有的数组元素
{
printf("%5d",a[i][j]);
b[j][i]=a[i][j]; //这个就是进行行列转换的关键语句 如 b[2][1]=a[1][2]
}
printf("\n");
}
printf("array b:\n"); //这个也是
for(i=0;i<=2;i++)
{
for(j=0;j<=1;j++)
printf("%5d",b[i][j]); //输出转换后b数组的结果
printf("\n");
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-12-31
array a array b是表示数组a 数组b
第一个for循环是将a数组里的数据倒置后放入b数组 就是这句 b[j][i]=a[i][j]
i表示行下标 j表示列下标 (你吧二维数组的图画出来就懂了)
第二个for循环是将b数组打印出来
第2个回答  2019-12-05
你用神鞭编程来进行,求解

C语言,将一个二维数组a的行和列的元素互换,存到另一个二维数组b中...
printf("array a:\\n"); \/\/双引号里的是字符串提示信息,作用是在屏幕上显示提示 for(i=0;i<=1;i++) \/\/外循环i遍历a数组的i行 { for(j=0;j<=2;j++) \/\/内循环j是在i行遍历该行所有的数组元素 { printf("%5d",a[i][j]); b[j][i]=a[i][j]; \/\/这个就是进行行列转换的关键语句 如...

将一个二维数组a的行和列的元素互换(即行列转置),存到另一个二维数组b...
include<stdio.h> define M 3 define N 4 void main(){ int a[M][N];int b[N][M]={0};int i,j;for(i=0;i<M;i++)for(j=0;j<N;j++)scanf("%d",&a[i][j]);for(i=0;i<M;i++)for(j=0;j<N;j++){ printf("%d\\t",a[i][j]);b[j][i]=a[i][j]...

...个二维数组行和列元素互换,存到另一个二维数组中 看好是C#语言_百度...
for(int i=0;i<3;i++) \/\/循环第一维 for(int j=0;j<3;j++) \/\/循环第二维 a2[i,j]=a1[j,i]; \/\/改变维数赋值

...讲一个2行3列的二维整形数组行和列的元素互换,存放到另一个二维...
include<stdio.h> void main(){ int a[2][3]={1,2,3,4,5,6};int b[3][2];int temp=0;printf("***打印倒置前的二维数组***\\n");for(int i=0;i<2;i++){ for(int j=0;j<3;j++){ printf("%d ",a[i][j]);} printf("\\n");} printf("***\\n");for(int x=...

c语言将一个二维数组的行列互换
int y[2][3]={ {1,2,3}, {4,5,6},};int index[2][3]={ {0x00,0x01,0x10}, {0x11,0x20,0x21},};int x[3][2];int i,i1,temp;for(i=0;i<2;i++){ for(i1=0;i1<3;i1++){ temp=index[i][i1]; x[temp>>4][temp&0xf]=y[i][i...

C语言 如何将一个二维数组的值全部替换成另一个二维数组
要想把一个二维数组值全部替换成另一个二维数组的值,前提条件为二者的规模是相同的。即行数和列数分别相同。假定均为M行N列,类型为int,即 int a[M][N], b[M][N];要将a中所有值替换成b的值,有以下两种方法。1 逐一元素赋值。使用双重循环,对数组元素遍历并赋值。代码如下:int i, j;...

c语言输出二维数组中指定列的和 如输入二维数组: 1 2 3 4 5 6 7 8...
define ROW 4 int main(){ int array[ROW][COL]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};int pos;for(int i = 0;i<ROW;i++){ for(int j = 0; j<COL;j++){ printf("%d\\t",array[i][j]);} printf("\\n");} printf("请输入指定列:");scanf("%d",&pos...

编写程序,将一个二维数组的行列互换性并考虑用函数实
二维数组行列互换,一个数组 行等于 row,列等于 col, 另一个数组 行等于 col, 列等于 row.程序如下:include<stdio.h> \/\/ 函数 void ex(int *a, int *b, int row, int col){ int i,j;for (j=0;j<row;j++) for (i=0;i<col;i++) b[i*row+j] = a[j*col+i];} int ...

c语言输入一个两行三列矩阵,将其行列互换后,将原矩阵和互换后矩阵输出...
h>int main(){int i,j,a[2][3],b[3][2]; for(i=0;i<2;i++) for(j=0;j<3;j++) {scanf("%d",&a[i][j]); b[j][i]=a[i][j]; } printf("\\n"); for(i=0;i<2;i++) {for(j=0;j<3;j++) printf("%4d",a[i][...

...}将a的行和列的元素互换后存到另一个二维数组b中,编程
int a[3][4]={1,2,3,4,5,6,7,8,9};,相当于int a[3][4]={{1,2,3,4},{5,6,7,8},{9,0,0,0}};因此,a[1][3]=8, a[2][3]=0;

相似回答