前言
十进制转换成二进制,将笔算的过程转换成代码实现,需要用到递归,实现倒着打印余数。
一、实验描述
给定任意一个非负十进制整数,请利用递归的方式,求解它的二进制表示方式。
基本的思路是:把该整数除以2得到余数,然后倒着输出余数。
思考一下:如何实现倒着打印余数呢?
二、实验代码
main.c
/*十进制转换成二进制*/
#include <stdio.h>
void ten_to_two(int number)
{
if (number <= 0) {
return;
}
ten_to_two(number / 2);
printf("%d ", number % 2);
}
int main(void)
{
int number;
scanf("%d", &number);
ten_to_two(number);
return 0;
}
三、实验结果
总结
递归函数,需要找到递归终止的条件;十进制转换成二进制,需要做整除和取余运算。