如何使用 C# 中的递归将数字从十进制转换为二进制?
若要获得十进制的二进制,首先使用递归设置十进制数 −
int dec = 30;
现在将值传递给函数 −
public int displayBinary(int dec) {
}现在,检查条件,直到十进制值变为 0,然后使用递归获取十进制 num 的模 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
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP