用c语言编写递归函数,实现讲一个十进制的整数以二进制的形式输出。并编写函数测试。
时间: 2023-03-13 21:35:42 浏览: 157
可以使用以下代码实现:#include <stdio.h>void decimaltobinary(int n)
{
// array to store binary number
int binaryNum[32];
// counter for binary array
int i = 0;
while (n > 0) {
// storing remainder in binary array
binaryNum[i] = n % 2;
n = n / 2;
i++;
}
// printing binary array in reverse order
for (int j = i - 1; j >= 0; j--)
printf("%d",binaryNum[j]);
} // Driver program to test above function
int main()
{
int n = 17;
decimaltobinary(n);
return 0;
} // 函数测试
#include <stdio.h>
#include <assert.h>int main()
{
int n1 = 17;
int n2 = 0;
int n3 = 5; assert(decimaltobinary(n1) == 10001);
assert(decimaltobinary(n2) == 0);
assert(decimaltobinary(n3) == 101); return 0;
}
阅读全文