gpt4 book ai didi

c# - 翻转二进制文件

转载 作者:行者123 更新时间:2023-11-30 20:18:41 25 4
gpt4 key购买 nike

我想将二进制翻转为 10。例如我有二进制 101 输出应该是 010。我一直在尝试遍历数组并更改值,但输出始终是 0, 000, 0000, 00

这是我正在使用的代码:

static void Main(string[] args)
{
Console.Write("Input Binary: ");
String x = Console.ReadLine();
char[] bin = x.ToCharArray();
int[] nbin = new int[bin.Length];

for (int i = 0; i < bin.Length; i ++)
{

int a = bin[i];
if(a == 0)
{

nbin.SetValue(1, i);

}
if(a == 1)
{

nbin.SetValue(0, i);
}

}

foreach (var e in nbin)
{
Console.Write(e);
}

Console.Read();
}

最佳答案

您正在将整数与字符进行比较,这可能永远不会得到预期的结果,因为您正在与字符的 ASCII 值进行比较。

字符在C#中用''表示,所以你应该把它们加到条件中的0和1中:

if(a == '0')
{

nbin.SetValue(1, i);

}
if(a == '1')
{

nbin.SetValue(0, i);
}

如果用户输入了一些奇怪的东西,你也可以打印一条错误信息:

if(a == '0')
{

nbin.SetValue(1, i);

} else if(a == '1')
{

nbin.SetValue(0, i);
} else
{
Console.WriteLine("Input Invalid!");
return;
}

关于c# - 翻转二进制文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40759159/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com