c#中将一个矩阵二维数组顺时针旋转90度,代码怎么写啊? 20
3个回答
展开全部
int m=0;
int n=0;
int i=0;
int j=0;
int k=0;
StringBuilder sb = new StringBuilder();
m = 4;
n = 5;
int[,] JZ1 = new int[m, n];
int[,] JZ2 = new int[n, m];
for (i = 0; i < m; i++)//初始化原矩阵
{
for (j = 0; j < n; j++)
{
JZ1[i,j] = ++k;
sb.Append(JZ1[i, j].ToString() + " ");
}
sb.AppendLine(" ");
}
label3.Text = sb.ToString();//显示原矩阵
sb.Remove(0, sb.Length);
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
JZ2[j, m - i - 1] = JZ1[i, j];//将原矩阵顺时针转90度
}
}
for (i = 0; i < n; i++)
{
for (j = 0; j < m; j++)
{
sb.Append(JZ2[i, j].ToString() + " ");
}
sb.AppendLine(" ");
}
label4.Text = sb.ToString();//显示结果
int n=0;
int i=0;
int j=0;
int k=0;
StringBuilder sb = new StringBuilder();
m = 4;
n = 5;
int[,] JZ1 = new int[m, n];
int[,] JZ2 = new int[n, m];
for (i = 0; i < m; i++)//初始化原矩阵
{
for (j = 0; j < n; j++)
{
JZ1[i,j] = ++k;
sb.Append(JZ1[i, j].ToString() + " ");
}
sb.AppendLine(" ");
}
label3.Text = sb.ToString();//显示原矩阵
sb.Remove(0, sb.Length);
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
JZ2[j, m - i - 1] = JZ1[i, j];//将原矩阵顺时针转90度
}
}
for (i = 0; i < n; i++)
{
for (j = 0; j < m; j++)
{
sb.Append(JZ2[i, j].ToString() + " ");
}
sb.AppendLine(" ");
}
label4.Text = sb.ToString();//显示结果
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
纸上画图找规律
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
行变列,列变行
然后行的顺序反过来
你在纸上画一下示意图就会发现规律
然后行的顺序反过来
你在纸上画一下示意图就会发现规律
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询