用C语言编写,矩阵的转置

2025-10-05 13:18:10

1、打开visual C++ 6.0-文件-新建-文件-C++ Source File

用C语言编写,矩阵的转置

用C语言编写,矩阵的转置

2、定义变量和数组:

#include<stdio.h>

main()

{

  int i,j,i1,j1,a[101][101],b[101][101];                 /*定义变量的数据类型和数组类型*/

用C语言编写,矩阵的转置

3、输入行数:

  printf("please input the number of rows(<=100)\n");    

  scanf("%d",&i1);                              /*输入行数*/

用C语言编写,矩阵的转置

4、输入列数:

  printf("please input the number of columns(<=100)\n");

  scanf("%d",&j1);                              /*输入列数*/

用C语言编写,矩阵的转置

5、输入数组中的元素:

  printf("please input the element\n");

  for(i=0;i<i1;i++)                             /*控制行数*/

  for(j=0;j<j1;j++)                             /*控制列数*/

  scanf("%d",&a[i][j]);                              /*输入数组中的元素*/

用C语言编写,矩阵的转置

6、输入的数据:

  printf("array a:\n");                              /*将输入的数据以二维数组的形式输出*/

  for(i=0;i<i1;i++)                             /*控制输出的行数*/

  {

    for(j=0;j<j1;j++)                                /*控制输出的列数*/

    printf("\t%d",a[i][j]);                          /*输出元素*/

    printf("\n");                                   /*每输出一行元素进行换行*/

  }

用C语言编写,矩阵的转置

7、行列互换:

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

  for(j=0;j<j1;j++)

  b[j][i]=a[i][j];                                  /*将a数组的i行j列元素赋给b数组的j行i列实现行列互换*/

用C语言编写,矩阵的转置

8、将互换后的b数组输出:

  printf("array b:\n");                              /*将互换后的b数组输出*/

  for(i=0;i<j1;i++)                             /*b数组行数最大值为a数组列数*/

  {

    for(j=0;j<i1;j++)                                /*b数组列数最大值为a数组行数*/

    printf("\t%d",b[i][j]);                          /*输出b数组元素*/

    printf("\n");                                   /*每输出一行进行换行*/

  }

用C语言编写,矩阵的转置

9、完整的源代码:

#include<stdio.h>

main()

{

  int i,j,i1,j1,a[101][101],b[101][101];                 /*定义变量的数据类型和数组类型*/

  printf("please input the number of rows(<=100)\n");    

  scanf("%d",&i1);                              /*输入行数*/

  printf("please input the number of columns(<=100)\n");

  scanf("%d",&j1);                              /*输入列数*/

  printf("please input the element\n");

  for(i=0;i<i1;i++)                             /*控制行数*/

  for(j=0;j<j1;j++)                             /*控制列数*/

  scanf("%d",&a[i][j]);                              /*输入数组中的元素*/

  printf("array a:\n");                              /*将输入的数据以二维数组的形式输出*/

  for(i=0;i<i1;i++)                             /*控制输出的行数*/

  {

    for(j=0;j<j1;j++)                                /*控制输出的列数*/

    printf("\t%d",a[i][j]);                          /*输出元素*/

    printf("\n");                                   /*每输出一行元素进行换行*/

  }

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

  for(j=0;j<j1;j++)

  b[j][i]=a[i][j];                                  /*将a数组的i行j列元素赋给b数组的j行i列实现行列互换*/

  printf("array b:\n");                              /*将互换后的b数组输出*/

  for(i=0;i<j1;i++)                             /*b数组行数最大值为a数组列数*/

  {

    for(j=0;j<i1;j++)                                /*b数组列数最大值为a数组行数*/

    printf("\t%d",b[i][j]);                          /*输出b数组元素*/

    printf("\n");                                   /*每输出一行进行换行*/

  }

用C语言编写,矩阵的转置

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢