给定一个数。
要求:一、求它是几位数,二、正序打印出各位数字。
这个问题是一个非常简单的问题,解决的办法也很多,下面是使用递归的方法进行计算的。
使用的语言为c,但选项里没有,所以选了C++。
有什么疑问可以在下面留言,如果发现错误也请及时留言。
#include<stdio.h>
int digits = 0;//定义全局变量
void REC_disassemble_number(int num)
{
if (num == 0)
{
return;
}
else
{
REC_disassemble_number(num / 10);
digits++;//计算位数
printf("%d ", num % 10);//取各位数字
}
}
int main()
{
int num;
printf("Please input number:");
scanf("%d",&num);
printf("Each of these number:");
REC_disassemble_number(num);
printf("\nThis number is %d digits.", digits);
return 0;
}