递归(Recursion)是指在函数的定义中使用函数自身的方法,使用时一定要明确递归终止条件 。
那么我们该如何获取整数的各位数字呢 ?
一个整数对10取余(%10)便能得到该整数的个位数字,而一个整数整除10则会丢失原来的个位数字,从而达到降一位的目的 。
查阅ASILL码表可知,数字对应的字符比数字大48 。
由此,我们可以设计出如下函数 :
void DiGui(int num){
if(num != 0){
DiGui(num/10);
printf("%c",num%10+48);
}
}
当然转换字符也可以通过'0'字符加相应数字实现 。
'0'的ASILL码值为48 。
printf("%c",num%10+'0');