C#编写一个方法实现矩阵转换

来源:百度知道 编辑:UC知道 时间:2024/05/18 02:07:51
using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void zhuanzhi(int[,] arr)
{
int[,] arr2=new int[arr.GetLength(1),arr.GetLength(0)];
for (int i = 0; i < arr2.GetLength(0); i++)
{
for (int j = 0; i < arr2.GetLength(1); j++)
{
arr2[i,j] =arr[j,i];
Console.Write("{0,3}", arr2[i, j]);
}
}
}

static void Main(string[] args)
{

int[,] arr=new int[3,4]{{1,2,3,4,},{5,6,7,8},{9,5,2,3}};
Console.WriteLine("原来的矩阵为:");
for(int i=0;i<3;i++)
{
for (int j = 0; j < 4; j++)

我到不明白你说的矩阵转化是什么意思,看你的代码,有一个明显的错误,即
for (int i = 0; i < arr2.GetLength(0); i++)
{
for (int j = 0; i < arr2.GetLength(1); j++)
{
arr2[i,j] =arr[j,i];
Console.Write("{0,3}", arr2[i, j]);
}
}
第二个for循环里面的i应该改为j,不然j就没有条件限制了。
原来的程序在调试时会报超过索引错误,修改后可以输出你的数组,应该就是你说的矩阵转化吧。
在第二个for循环结束的时候加一个换行语句显示效果更好!

我的机器上都已经调试出来了,帅哥。

应该怎么修改,我的也是这样的,帅哥