qwertyuiopasdfghjklzxcvbnm
代码太模糊看不清楚,请你贴出文本代码看看
从最后一张图看,你的输出有问题,数组不能整体输出
要循环遍历再输出
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace 练习01
{
class A
{
private static void Main()
{
int[,] sz = new int[4, 4]
{
{ 0, 4, 0, 0 },
{ 2, 4, 0, 2 },
{ 4, 8, 4, 2 },
{ 4, 8, 8, 4 },
};
int[,] suzu = new int[4, 4];
suzu = hs1(sz);
Console.WriteLine(suzu);
Console.ReadKey ();
}
private static int[] Hs(int[] array)
{
int[] newarray = new int[array.Length ];
int c = 0;
for (int j = 0; j < array.Length ; j++)
{
if (array[j] != 0)
{
newarray[c++] = array[j];
}
}
return newarray;
}
private static int[] Hs1(int[] array)
{
array = Hs(array);
for (int i = 0; i < array.Length -1; i++)
{
if (array[i] != 0 && array[i] == array[i + 1])
{
array[i] = array[i] + array[i + 1];
array[i + 1] = 0;
}
}
array = Hs(array);
return array;
}
private static int[,] hs(int[,] sz)
{
int[] newsz = new int[sz.GetLength(0)];
for (int i = 0; i < sz.GetLength(1); i++)
{
for (int j = 0; j < sz.GetLength(0); j++)
{
newsz[i] = sz[j, i];
}
newsz = Hs1(newsz);
for (int j = 0; j < sz.GetLength(0); j++)
{
sz[j, i] = newsz[j];
}
}
return sz;
}
private static int[,] hs1(int[,] sz)
{
int[] newsz1 = new int[sz.GetLength(0)];
for (int i = 0; i < sz.GetLength(1); i++)
{
for (int j = sz.GetLength(0) - 1; j >= 0; j--)
{
newsz1[3 - j] = sz[j, i];
}
newsz1 = Hs1(newsz1);
for (int j = 0; j < sz.GetLength(0); j++)
{
sz[j, i] = newsz1[3 - j];
}
}
return sz;
}
}
}
你需要将 int[,] 转成 string 类型,里面的数据都需要自行转换,然后拼接,我这里提供了一个简单的转换器,支持 int[,] 转string
int[,] suzu = new int[4, 4];
suzu = hs1(sz);
Converter<int[,], string> converter = new Converter<int[,], string>(
delegate(int[,] arr) {
string r = "";
long x = arr.GetLongLength(0);
long y = arr.GetLongLength(1);
for (int i = 0; i < x; i++)
{
r += "\n";
for (int j = 0; j < y; j++)
{
r += arr[i, j].ToString().PadLeft(4);
}
}
return r;
});
string s = converter.Invoke(suzu);
Console.WriteLine(s);
解决了嘛
出现代码无法运行的问题,通常需要先确定是哪里的问题。以下是一些可能的解决方案:
检查代码是否拼写错误:检查代码中是否有拼写错误。可以使用文本编辑器检查代码,或使用自动更正功能纠正拼写错误。
检查代码是否语法错误:检查代码中是否有语法错误,如缺少括号、引号等。可以使用文本编辑器检查代码,或使用语法检查工具。
检查代码是否环境配置错误:如果代码在特定的环境(如Linux、Windows等)上运行,则可能存在环境配置错误。请确保代码在正确的环境中运行,或者使用环境变量将代码所需的环境路径传递给函数。
检查代码是否引用错误:如果代码引用了错误的库或模块,则可能存在引用错误。请确保使用了正确的库或模块,或对代码进行重构以消除引用错误。
对于qwertyuiopasdfghjklzxcvbnm这个字符串,它看起来像是一个键盘布局的键值对。请确保在代码中使用了正确的键值对,或对代码进行重构以消除键值对中的错误。另外,建议仔细检查代码,确保没有拼写错误或语法错误。