C# 正在尝试从十进制转换为二进制,但在C中不起作用# { 班级计划 { 静态void Main(字符串[]参数) { Console.WriteLine(“输入要转换的十进制数”); int num=int.Parse(Console.ReadLine()); 整数计数=0; int[]二进制={}; while(num!=0) { int-answer=num%2; 二进制[计数]=答案; 计数++; num/=2; 控制台写入线(num); } 对于(int i=binary.Length;i=0;i++) { Console.WriteLine(二进制[i]); } Console.ReadLine(); } } }
“不工作”不是程序员的术语。在询问有关Stackoverflow的问题时,您应该提供更详细的信息,说明到底出了什么问题 看起来您的代码有许多不同的问题。很难知道从哪里开始。下面是我如何编写自己的C#代码来将整数转换为二进制字符串:C# 正在尝试从十进制转换为二进制,但在C中不起作用# { 班级计划 { 静态void Main(字符串[]参数) { Console.WriteLine(“输入要转换的十进制数”); int num=int.Parse(Console.ReadLine()); 整数计数=0; int[]二进制={}; while(num!=0) { int-answer=num%2; 二进制[计数]=答案; 计数++; num/=2; 控制台写入线(num); } 对于(int i=binary.Length;i=0;i++) { Console.WriteLine(二进制[i]); } Console.ReadLine(); } } },c#,C#,“不工作”不是程序员的术语。在询问有关Stackoverflow的问题时,您应该提供更详细的信息,说明到底出了什么问题 看起来您的代码有许多不同的问题。很难知道从哪里开始。下面是我如何编写自己的C#代码来将整数转换为二进制字符串: { class Program { static void Main(string[] args) { Console.WriteLine("Input decimal number to con
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Input decimal number to convert");
int num = int.Parse(Console.ReadLine());
int count = 0;
int[] binary = { };
while (num != 0)
{
int answer = num % 2;
binary[count] = answer;
count++;
num /= 2;
Console.WriteLine(num);
}
for (int i = binary.Length; i < binary.Length && i >= 0; i++)
{
Console.WriteLine(binary[i]);
}
Console.ReadLine();
}
}
}
它怎么不起作用?使用一些示例输入、输出内容和预期输出内容更新问题,您将有更好的机会获得一些答案。在调试器中单步执行代码时,哪个操作首先生成意外结果?当时变量的值是多少?结果如何?你期望得到什么结果?为什么?那么,您尝试在这一行
int num=int.parse(Console.ReadLine())中解析整数,而不是小数代码>请添加预期结果和您的代码的确切问题或字符串输出=Convert.ToString(num,2)
或string.Concat(Convert.ToString(num,2.Reverse())代码>如果它真的需要反转。@吉米:当然,但正如我指出的,这是我如何编写自己的C#代码来转换它(而不是使用现有代码)。注释与OP的预期输出更相关,因此如果它真的需要反转。在这里,位表示是相反的。我想知道这是否真的是预期的结果(问题缺少真实的描述,所以…)。
StringBuilder builder = new StringBuilder();
if (num == 0)
{
builder.Append('0');
}
else
{
while (num != 0)
{
builder.Insert(0, (char)('0' + (num & 1)));
num >>= 1;
}
}
Console.WriteLine(builder.ToString());