如何在 C# 中使用递归将数字从十进制转换为二进制?
csharpprogrammingserver side programming更新于 2025/5/24 10:52:17
要使用递归获取十进制的二进制,首先设置十进制数 −
int dec = 30;
现在将值传递给函数 −
public int displayBinary(int dec) { }
现在,检查条件,直到十进制值为 0,并使用递归获取十进制数的模 2,如下所示。递归调用将使用 dec/2 值 − 再次调用该函数
public int displayBinary(int dec) { int res; if (dec != 0) { res = (dec % 2) + 10 * displayBinary(dec / 2); Console.Write(res); return 0; } else { return 0; } }
以下是完整代码 −
示例
using System; public class Program { public static void Main(string[] args) { int dec; Demo d = new Demo(); dec = 30; Console.Write("Decimal = "+dec); Console.Write("
Binary of {0} = ", dec); d.displayBinary (dec); Console.ReadLine(); Console.Write("
"); } } public class Demo { public int displayBinary(int dec){ int res; if (dec != 0) { res = (dec % 2) + 10 * displayBinary(dec / 2); Console.Write(res); return 0; } else { return 0; } } }
输出
Decimal = 30 Binary of 30 = 11110