想不出来返回值咋写,return只能接一个值。
sjakfogltpslgkejriryqotoxbcm
函数名有波浪线,多半是返回值没有写对。具体要看你文本格式的代码
你这图片太模糊
class A
{
private static void Main()
{
char cz = char.Parse(Console.ReadLine());
if (cz == 'a')
{
cz = (char)1;
}
if (cz == 'd')
{
cz = (char)2;
}
if (cz == 'w')
{
cz = (char)3;
}
if (cz == 's')
{
cz = (char)4;
}
int[,] sz = new int[4, 4]
{
{0,4,0,0 },
{2,8,2,2 },
{16,8,4,2 },
{32,16,8,4 },
};
int[] x1 = new int[4] { 0, 4, 0, 0 };
int[] x2 = new int[4] { 2, 8, 2, 2 };
int[] x3 = new int[4] { 16, 8, 4, 2 };
int[] x4 = new int[4] { 32, 16, 8, 4 };
int[] x5a = new int[4] { 0, 0, 4, 0 };
int[] x6a = new int[4] { 2, 2, 8, 2 };
int[] x7a = new int[4] { 2, 4, 8, 16 };
int[] x8a = new int[4] { 4, 8, 16, 32 };
int[,] sz1 = new int[4, 4]
{
{ x1[0],x1[1],x1[2],x1[3] },
{ x2[0],x2[1],x2[2],x2[3] },
{ x3[0],x3[1],x3[2],x3[3] },
{ x4[0],x4[1],x4[2],x4[3] },
};
Hs1( x1, x2, x3, x4, cz);
Console.WriteLine(sz1);
}
private static int[] Hs1( int[] x1, int[] x2, int[] x3, int[] x4, int cz)
{
if (cz == 1)
{
for (int i = 0; i < 3; i++)
{
if (x1[i] == x1[i + 1])
{
x1[i] += x1[i + 1];
x1[i + 1] = 0;
if (x1[i] == 0 || x1[i + 1] == 0)
{
int t = x1[3];
x1[3] = x1[i];
x1[i] = t;
for (int j = i; j < 3 - 1; j++)
{
x1[j] = x1[j + 1];
x1[3] = t;
}
}
return x1;
}
if (x2[i] == x2[i + 1])
{
x2[i] += x2[i + 1];
x2[i + 1] = 0;
if (x2[i] == 0 || x2[i + 1] == 0)
{
int t = x2[3];
x2[3] = x2[i];
x2[i] = t;
for (int j = i; j < 3 - 1; j++)
{
x2[j] = x2[j + 1];
x2[3] = t;
}
}
return x2;
}
if (x3[i] == x3[i + 1])
{
x3[i] += x3[i + 1];
x3[i + 1] = 0;
if (x3[i] == 0 || x3[i + 1] == 0)
{
int t = x3[3];
x3[3] = x3[i];
x3[i] = t;
for (int j = i; j < 3 - 1; j++)
{
x3[j] = x3[j + 1];
x3[3] = t;
}
}
return x3;
}
if (x4[i] == x4[i + 1])
{
x4[i] += x4[i + 1];
x4[i + 1] = 0;
if (x4[i] == 0 || x4[i + 1] == 0)
{
int t = x4[3];
x4[3] = x4[i];
x4[i] = t;
for (int j = i; j < 3 - 1; j++)
{
x4[j] = x4[j + 1];
x4[3] = t;
}
}
return x4;
}
}
}
}
}
你把return全写进if里了
但是c#要求必须在语法层面保证函数必须有返回,不能有时有返回有时没返回
你最后再加个return null