首页 > 代码库 > 递归调用函数-以字符串输出数字

递归调用函数-以字符串输出数字

递归输出字符,注意,使用putchar输出一个数字的时候需要加‘0‘,否则。。。。

 1 #include<stdio.h> 2  3 void convert(int n) 4 { 5     int i; 6     if((i=n/10)!=0) 7     { 8         convert(i); 9     }10     putchar(n%10+0);11 }12 13 int main(void)14 {15     int num;16     printf("input a num:\n");17     scanf("%d",&num);18     printf("string is :\n");19     if(num<0)20     {21         putchar(-);22         num=-num;23     }24     convert(num);25     putchar(\n);26     return 0;27 }

 

每次调用都获得一个去掉了最后一位的数字,然后递归取余就可以把最高位到最低位按照字符形式输出,相当于数字转字符串。

递归调用函数-以字符串输出数字